Javascript 在Odoo 10中的小部件内显示FormView
我可以创建一个小部件,它将模型名作为参数并呈现模型的表单视图吗 我的期望是:Javascript 在Odoo 10中的小部件内显示FormView,javascript,widget,odoo,odoo-10,formview,Javascript,Widget,Odoo,Odoo 10,Formview,我可以创建一个小部件,它将模型名作为参数并呈现模型的表单视图吗 我的期望是: 当用户单击菜单时,模型表单以编辑模式显示(“mymodule.asset_category”) 然后用户选择一个类别下拉列表。例如“资产”。(“资产”资产类别的“相关模型”字段的类型为“ir.model”,其值为“mymodule.Asset”) 使用户能够创建新的相关模型('mymodule.asset')实例的新表单是在父表单中创建的 用户填写资产字段,然后单击保存按钮 因此,“mymodule.asset\u c
class AssetCategory(models.Model):
_name = 'mymodule.asset_category'
name = fields.Char(string=u'Category', required="True")
related_model = fields.Many2one('ir.model', string=u'Related model')
class Asset(models.Model):
_name = 'mymodule.asset'
name = fields.Char(string=u'Asset Name', required="True")
amount = fields.Float(string=u'Amount', digit=[12, 2])
XML将类似于:
<record model="ir.ui.view" id="asset_form_view">
<field name="name">mymodule_asset_form</field>
<field name="model">mymodule.asset_category</field>
<field name="arch" type="xml">
<form string="asset category">
<sheet>
<field name="name"></field>
<field name="related_model"></field>
<widget type="my_widget"></widget>
</sheet>
</form>
</field>
</record>
我的当前代码引发以下错误:
http://localhost:8069/web/static/src/js/views/form_view.js:1239
Алдааны мөр:
TypeError: Cannot read property 'attrs' of undefined
at Class.set_fields_view (http://localhost:8069/web/static/src/js/views/form_view.js:1239:49)
at Class.start (http://localhost:8069/web/static/src/js/views/form_view.js:97:31)
at Class.prototype.<computed> [as start] (http://localhost:8069/web/static/src/js/framework/class.js:89:38)
at http://localhost:8069/web/static/src/js/framework/widget.js:193:25
at http://localhost:8069/web/static/lib/jquery/jquery.js:3276:89
at fire (http://localhost:8069/web/static/lib/jquery/jquery.js:3119:58)
at Object.add [as done] (http://localhost:8069/web/static/lib/jquery/jquery.js:3165:49)
at Array.<anonymous> (http://localhost:8069/web/static/lib/jquery/jquery.js:3275:77)
at Function.each (http://localhost:8069/web/static/lib/jquery/jquery.js:383:58)
at Object.<anonymous> (http://localhost:8069/web/static/lib/jquery/jquery.js:3272:56)
http://localhost:8069/web/static/src/js/views/form_view.js:1239
Алдааны мөр:
TypeError:无法读取未定义的属性“attrs”
在Class.set\u字段\u视图中(http://localhost:8069/web/static/src/js/views/form_view.js:1239:49)
开始上课时(http://localhost:8069/web/static/src/js/views/form_view.js:97:31)
在课堂上。[作为开始](http://localhost:8069/web/static/src/js/framework/class.js:89:38)
在http://localhost:8069/web/static/src/js/framework/widget.js:193:25
在http://localhost:8069/web/static/lib/jquery/jquery.js:3276:89
着火(http://localhost:8069/web/static/lib/jquery/jquery.js:3119:58)
在Object.add[完成时](http://localhost:8069/web/static/lib/jquery/jquery.js:3165:49)
在阵列上。(http://localhost:8069/web/static/lib/jquery/jquery.js:3275:77)
在功能上,每个(http://localhost:8069/web/static/lib/jquery/jquery.js:383:58)
反对。(http://localhost:8069/web/static/lib/jquery/jquery.js:3272:56)
据我所知,您对Odoo很熟悉,您已经听说过hr\u时间表\u表
模块
您可以查看本模块以供参考
hr\u时间表\u表
:-
结果类似于FormView内部的FormView小部件。所以保存按钮也应该是自定义的。
http://localhost:8069/web/static/src/js/views/form_view.js:1239
Алдааны мөр:
TypeError: Cannot read property 'attrs' of undefined
at Class.set_fields_view (http://localhost:8069/web/static/src/js/views/form_view.js:1239:49)
at Class.start (http://localhost:8069/web/static/src/js/views/form_view.js:97:31)
at Class.prototype.<computed> [as start] (http://localhost:8069/web/static/src/js/framework/class.js:89:38)
at http://localhost:8069/web/static/src/js/framework/widget.js:193:25
at http://localhost:8069/web/static/lib/jquery/jquery.js:3276:89
at fire (http://localhost:8069/web/static/lib/jquery/jquery.js:3119:58)
at Object.add [as done] (http://localhost:8069/web/static/lib/jquery/jquery.js:3165:49)
at Array.<anonymous> (http://localhost:8069/web/static/lib/jquery/jquery.js:3275:77)
at Function.each (http://localhost:8069/web/static/lib/jquery/jquery.js:383:58)
at Object.<anonymous> (http://localhost:8069/web/static/lib/jquery/jquery.js:3272:56)