Başka bir modele çoktan fazla ilişkiyle bağlanan iki modelim var.Birçok ilişkiye filtre uygulayan Tastypie
Burada modeller kendilerini
class Posts(models.Model):
id = models.CharField(max_length=108, primary_key=True)
tags = models.ManyToManyField('Tags', through='PostTags')
class Tags(models.Model):
id = models.CharField(max_length=108, primary_key=True)
posts = models.ManyToManyField('Posts', through='PostTags')
class PostTags(models.Model):
id = models.CharField(max_length=108, primary_key=True)
deleted = models.IntegerField()
post_id = models.ForeignKey('Posts', db_column='post_field')
tag_id = models.ForeignKey('Tags', db_column='tag_field')
Ve tastypie kaynaklar posttags Masanın üzerinde
class PostsResource(ModelResource):
tags = fields.ToManyField('django_app.api.TagsResource', 'tags', null=True)
class Meta:
queryset = Posts.objects.filter(deleted=0)
resource_name = 'posts'
class TagsResource(ModelResource):
posts = fields.ToManyField('django_app.api.PostsResource', 'posts', null=True)
class Meta:
queryset = Tags.objects.filter(deleted=0)
resource_name = 'tags'
Silinen bayrak var, öyle sadece bağlantılı dönüş sonuçlarına mümkün olduğunda PostTags silinen bayrak 0 mı?
Tastypie'de this filtre özniteliğini denedim ancak bağlantıyı yapan tabloyu değil, yalnızca bağlantılı tabloda (yani etiketler veya postalar) bayrağı önemsiyor gibi görünüyor.
denedin 'QuerySet = Posts.objects.filter (= 0 posttags__deleted)' Her Kaynak için Meta? – astevanovic
Bu garip, bu yarısı çalışıyor. Queryset.query'yi yazdırdığımda olduğu gibi, doğru SQL deyimini yapıyor (olduğu gibi silindi = 0). Fakat api isteği ile döndürülen sonuçlar hala bayrağı görmezden geliyor gibi görünüyor. – Shane