。我的Django应用程序中有两个表: 产品和商家
商家是产品中的外键。
这是我的data-config.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>
我的schema.xml是here
问题是,
cachePk="id" cacheLookup="${products_product.merchant_id}"
cacheImpl="SortedMapBackedCache"
无法按预期工作。索引构建时间减少了,因为已经提取的查询来自缓存,但是我没有在结果中获取这些字段:
merchant_name, commission, commission_type
我可能做错了什么?
答案 0 :(得分:0)
您是否尝试过包含&#34; id&#34;您&#34;商家的列#34; SELECT查询中的实体?因为您指定它将是与查找键匹配的键。
<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>