我有一個從外部數據庫讀取的TransientModel,因此我創建了帶有功能字段的模型,並且還聲明瞭搜索功能。openerp搜索視圖隱藏
這是部分列聲明:
_columns = {
'web_id': fields.function(_get_data, string='ID', fnct_search=_search_data, type='integer', method=True, multi='external'),
.....
}
樹視圖的操作是
<record id="action_preview_orders" model="ir.actions.act_window">
<field name="name">Preview Orders</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">external.data</field>
<field name="view_type">tree</field>
<field name="view_mode">tree</field>
<field name="view_id" ref="preview_orders_view"/>
<field name="target">current</field>
<field name="search_view_id" ref="preview_orders_view_filters"/>
</record>
和搜索的觀點是
<record id="preview_orders_view_filters" model="ir.ui.view">
<field name="name">Preview Filters</field>
<field name="model">external.data</field>
<field name="arch" type="xml">
<search string="Search Orders">
<filter string="Type" icon="terp-accessories-archiver" domain="[('type_order','=','RO')]"/>
</search>
</field>
</record>
數據顯示正確,我問題是搜索表單不顯示。 它存在html中,但div有style = display:hidden
我可能做錯了什麼?
我增加了獲取數據功能的問題,它是高度動態的。 我不知道這可能是一個問題......
def _get_data(self, cr, uid, ids, field_names, arg, context=None):
res = dict.fromkeys(ids)
for k in ids:
res[k] = dict.fromkeys(self._mapper.keys())
for mk in self._mapper.keys():
fmt = self._mapper[mk].get('format', None)
fnc = self._mapper[mk].get('function', None)
params = self._mapper[mk].get('parameters', None)
if params != None:
indexes = [INDEXES[param] for param in params]
values = [self._rows[k][index] for index in indexes]
if fmt != None:
res[k][mk] = fmt.format(*values)
elif fnc != None:
res[k][mk] = fnc(self, cr, uid, *values)
else:
res[k][mk] = ""
else:
res[k][mk] = ""
return res
搜索功能是一個虛擬的一個:
def _search_data(self, cr, uid, obj, name, args, context):
return [('id','in',[0])]
我已經做了一個,一個虛擬的同一個功能領域:高清_search_data(個體經營,CR,UID,OBJ,名稱args上下文): 回報[( 'id','in',[0])] – 2014-12-11 10:51:23
你必須根據你的搜索數據使用它數據是沒有存儲在表中,所以你需要從相應的表中獲取數據進行搜索也發佈你的_get_data在這裏更好地理解 – senthilnathang 2014-12-11 12:00:46
我把它添加到我原來的帖子 – 2014-12-12 13:55:28