.我的 Django 应用程序中有两个表:产品与商家
商家是产品中的外键。
这是我的数据配置.xml片段:
<entity name="products_product"
query="SELECT id, merchant_id, product_id, retail_price, date_created FROM products_product"
transformer="script:generate_resource_uri">
<entity name="merchant"
query="SELECT merchant_name, commission, commission_type FROM products_merchant"
cacheKey='id' cacheLookup='products_product.merchant_id'
cacheImpl="SortedMapBackedCache">
<field column="merchant_name" name="merchant_name"/>
<field column="commission" name="commission"/>
<field column="commission_type" name="commission_type"/>
</entity>
</entity>
我的架构.xml在这里
问题是,那
cachePk="id" cacheLookup="${products_product.merchant_id}"
cacheImpl="SortedMapBackedCache"
无法按预期工作。索引构建时间减少了,因为已经获取的查询是从缓存中获取的,但我在结果中没有获得这些字段:
merchant_name, commission, commission_type
我可能做错了什么?
您是否尝试过在 SELECT 查询中包含"商家"实体的"id"列? 因为您指定它将是与查找键匹配的键。
<entity name="merchant"
query="SELECT id, merchant_name, commission, commission_type FROM products_merchant"
cacheKey='id' cacheLookup='products_product.merchant_id'
cacheImpl="SortedMapBackedCache">
<field column="merchant_name" name="mer`enter code here`chant_name"/>
<field column="commission" name="commission"/>
<field column="commission_type" name="commission_type"/>
</entity>