0
Django的查詢集濾波器我有一個模型:由陣列
class MyUser(AbstractBaseUser, PermissionsMixin):
class Meta():
db_table = 'my_user'
...
interests = models.ManyToManyField(Interest, blank=True, db_index=True)
我必須寫兩個查詢:
1)獲取已interest_id MyUsers = 1或5或4
2 )獲取具有interest_id = 1和5和4的MyUsers。
我的數據庫是PostgreSQL。
我寫SQL查詢第一種情況:
SELECT DISTINCT myuser_id FROM my_user_interests WHERE interest_id = ANY(array[1,5,4]);
,但我不能wtire它的第二種情況。
反正我需要Django的ORM做到這一點,因爲我還需要做編輯這個查詢集的新參數,如果我用.RAW()我不能這樣做..
請幫助我。
你試過:https://docs.djangoproject.com/en/1.8/ ref/models/querysets /#in? – Brandon
SQL與'... WHERE interest_id IN [1,5,4]')有什麼不同? –
布蘭登,是的,但它不正確。用戶= users.filter(interests__in = [1,5,4]) 丹尼爾,ERROR:語法錯誤處或附近 「[」 LINE 1:... CT * FROM my_user_interests WHERE interest_id IN [1,5,4 ] – Anton