我在另一个模型的 many2one 字段中创建了一个向导。其中提到了 qweb-report。现在我想选择 1record(来自 many2one 字段)并打印相应的报告。[以前我在该菜单的表单视图中完成了发票打印。]。有时这里的空报告正在打印。有人可以解释清楚吗?这是我的代码。
class invoice_wizard(osv.TransientModel):
_name = 'invoice.wizard'
_columns = {
'name':fields.many2one('hotel.booking',string="CustomerName"),
}
def invoice_print(self,cr,uid,ids,vals,context=None):
bookz=self.browse(cr,uid,ids,context=context)
ids2=self.pool.get['book.room'].search([('name','=',bookz.name.name)])
data = {
'ids': ids2,
'model': 'book.room',
'form': self.env['book.room'].read(['name'])[0]
}
return self.env['report'].get_action(self, 'hotels.Booking_Details',
data=data)
invoice_wizard()
我收到此错误:
Traceback (most recent call last):
File "/home/anipr/Desktop/odoo-8.0/openerp/http.py", line 537, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/home/anipr/Desktop/odoo-8.0/openerp/http.py", line 574, in dispatch
result = self._call_function(**self.params)
File "/home/anipr/Desktop/odoo-8.0/openerp/http.py", line 310, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/home/anipr/Desktop/odoo-8.0/openerp/service/model.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "/home/anipr/Desktop/odoo-8.0/openerp/http.py", line 307, in checked_call
return self.endpoint(*a, **kw)
File "/home/anipr/Desktop/odoo-8.0/openerp/http.py", line 803, in __call__
return self.method(*args, **kw)
File "/home/anipr/Desktop/odoo-8.0/openerp/http.py", line 403, in response_wrap
response = f(*args, **kw)
File "/home/anipr/Desktop/odoo-8.0/openerp/addons/web/controllers/main.py", line 952, in call_button
action = self._call_kw(model, method, args, {})
File "/home/anipr/Desktop/odoo-8.0/openerp/addons/web/controllers/main.py", line 940, in _call_kw
return checked_call(request.db, *args, **kwargs)
File "/home/anipr/Desktop/odoo-8.0/openerp/service/model.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "/home/anipr/Desktop/odoo-8.0/openerp/addons/web/controllers/main.py", line 939, in checked_call
return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
File "/home/anipr/Desktop/odoo-8.0/openerp/api.py", line 250, in wrapper
return old_api(self, *args, **kwargs)
File "/home/anipr/Desktop/odoo-8.0/openerp/addons/hotels/wizard/hotel_wizard.py", line 50, in invoice_print
ids2=self.pool.get['book.room'].search([('name','=',bookz.name.name)])
TypeError: 'instancemethod' object has no attribute '__getitem__'
提前致谢..!!