2016-01-04 29 views
6

Tôi đang cố tạo mô-đun kế thừa đơn giản để tôi có thể thêm nhiều trường trong Biểu mẫu cơ hội mới nhưng odoo không thích mã của tôi. Tôi khá mới trong Odoo và Python do đó, không đổ lỗi cho tôi :(Odoo - Lỗi máy chủ nội bộ khi gỡ cài đặt mô-đun tùy chỉnh

mymodule.py:

from openerp.osv import fields, osv 

class crm_lead_mymodule(osv.osv): 
    _inherit = 'crm.lead' 

    _columns = { 
     'product_type' : fields.selection([('basic', 'Basic'),('pro', 'Pro'),],), 
    } 

mymodule.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<openerp> 
<data> 
    <record id="view_crm_opportunity_mymodule_form" model="ir.ui.view"> 
     <field name="name">crm.lead.mymodule.inherit</field> 
     <field name="model">crm.lead</field> 
     <field name="inherit_id" ref="crm.crm_case_form_view_oppor"/> 
     <field name="arch" type="xml"> 
      <xpath expr="//notebook/page[@name='lead']" position="after"> 
       <page string="Product Information"> 
        <group col="3"> 
          <field name="product_type"/> 
        </group> 
       </page> 
      </xpath> 
     </field> 
    </record> 
</data> 
</openerp> 

tôi đã cố gắng rất nhiều cài đặt, sau khi thay đổi trong mã của tôi cho đến khi tôi gỡ bỏ cài đặt nó và odoo bị rơi. Tôi đang nhận được "Lỗi máy chủ nội bộ" với nhật ký sau:

Traceback (most recent call last): 
    File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 177, in run_wsgi 
    execute(self.server.app) 
    ... 
    ... 
    ... 
    File "/usr/lib/python2.7/dist-packages/openerp/modules/registry.py", line 168, in load 
    model = cls._build_model(self, cr) 
    File "/usr/lib/python2.7/dist-packages/openerp/models.py", line 593, in _build_model 
    original_module = pool[name]._original_module if name in parents else cls._module 
    File "/usr/lib/python2.7/dist-packages/openerp/modules/registry.py", line 84, in __getitem__ 
    return self.models[model_name] 
KeyError: 'crm.lead' 
+0

Cố gắng nhận xét ' ....' trong chế độ xem và cập nhật của bạn. –

+0

@DanilaGanchar Tôi có thể cập nhật nó bằng cách nào? Tôi không thể đăng nhập: ( – Alexandros

+0

Ok. Hãy thử để bình luận 'record' trong xem và khởi động lại máy chủ. Máy chủ phải xem lỗi đó biến mất. –

Trả lời

5

Firs Những gì bạn cần là kiểm tra phần depends trong số openerp .py. Đây phải là một cái gì đó như thế: 'depends': ['base', 'crm'],. Sau đó, hãy thử thả db cục bộ của bạn và tạo mới từ GUI.

Về sự cố trong trò chuyện (nút cơ hội trong khách hàng) ... Trong Bán hàng -> Khách hàng biểu mẫu hoạt động từ mô-đun mô-đun. Bạn có thể sử dụng chế độ nhà phát triển để kiểm tra. Trong biểu mẫu này, hãy sử dụng đối tượng res.partnerbase.view_partner_form.

Cách thêm trường của bạn vào biểu mẫu này? Chỉ cần tạo test_view.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<openerp> 
<data> 
    <record id="view_partner_form_mymodule_form" model="ir.ui.view"> 
     <field name="name">res.partner.mymodule.inherit</field> 
     <field name="model">res.partner</field> 
     <field name="inherit_id" ref="base.view_partner_form"/> 
     <field name="arch" type="xml"> 
      <xpath expr="//notebook/page" position="after"> 
       <page string="Product Information"> 
        <!-- your fields here --> 
       </page> 
      </xpath> 
     </field> 
    </record> 
</data> 
</openerp> 

Và thêm cái nhìn của bạn để OpenERP py như thế:

'data': [ 
    'test_view.xml', 
], 

Hãy cẩn thận! Trong chế độ xem này, hãy sử dụng mô hình res.partner, nhưng không sử dụng crm.lead. Hy vọng điều này sẽ giúp bạn!

Các vấn đề liên quan