1
我正在使用一些複雜的查詢來返回排名,比率和其他複雜輸出的django應用程序。我已經遵循了幾個從網上exampled,這幫助我找到最好的方式來把它和檢索數據返回將get_absolute_url合併到django中的原始SQL語句
然而,我想找到一種方法來注入自定義的詳細信息到一個給定的記錄,爲在我的情況下,試圖將get_absolute_url()值關聯到返回的記錄集
下面是一個返回最常用的興趣的示例,此查詢將始終返回一個有限的查詢集,有沒有一種方法來擴展返回的字典與模型的get_absolute_url()值?
def most_used_interests(self, limit_by=10):
cursor = connection.cursor()
cursor.execute("""
SELECT
i.name,
i.name_ar,
i.name_en,
ij.interest_id,
SUM (ij.C) item_count
FROM
(
SELECT
C .interest_id,
COUNT (b. ID) C
FROM
bargain_bargain b,
bargain_bargain_bargain_target C
WHERE
b. ID = C .bargain_id
GROUP BY
C .interest_id
UNION
SELECT
x.interest_id,
COUNT (P . ID) C
FROM
promotion_promotion P,
promotion_promotion_promo_target x
WHERE
x.promotion_id = P . ID
GROUP BY
x.interest_id
) ij, list_interest i
WHERE i.id=ij.interest_id
GROUP BY
ij.interest_id,
i.name,
i.name_ar,
i.name_en
ORDER BY
item_count DESC
LIMIT %s
""", [limit_by, ])
desc = cursor.description
if cursor.rowcount:
return [
dict(zip([col[0] for col in desc], row))
for row in cursor.fetchall()
]
return None
你的意思是除了在壓縮之前取出和擴展列之外? –
是啊,嘗試添加get_absolute_url,因爲他們分配給返回的字典 –