2016-01-04 7 views
6

मैं एक साधारण विरासत मॉड्यूल बनाने की कोशिश कर रहा हूं ताकि मैं नए अवसर फॉर्म में और फ़ील्ड जोड़ सकूं लेकिन odoo को मेरे कोड को पसंद नहीं है। मैं बहुत Odoo और अजगर में नया हूँ तो मुझे दोष नहीं है :(ओडू - कस्टम मॉड्यूल पर आंतरिक सर्वर त्रुटि अनइंस्टॉल करें

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> 

मैं इंस्टॉल किए जाने की बहुत कोशिश की, के बाद मेरी कोड में परिवर्तन जब तक मैं इसे अनइंस्टॉल करें और odoo दुर्घटनाग्रस्त निम्नलिखित लॉग के साथ मैं "आंतरिक सर्वर त्रुटि" हो रही है:

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

अपने दृश्य और अद्यतन मॉड्यूल में ' ....' टिप्पणी करने का प्रयास करें। –

+0

@DanilaGanchar मैं इसे कैसे अपडेट कर सकता हूं? मैं लॉगिन करने में सक्षम नहीं हूं :( – Alexandros

+0

ठीक है। 'रिकॉर्ड' को देखने और सर्वर को पुनरारंभ करने के लिए टिप्पणी करने का प्रयास करें। सर्वर को यह देखना होगा कि त्रुटियां गायब हो गई हैं। –

उत्तर

5

एफआइआर। आपको इसकी आवश्यकता है depends अनुभाग openerp .py में जांचें। यह ऐसा कुछ होना चाहिए: 'depends': ['base', 'crm'],। इसके बाद अपने स्थानीय डीबी को छोड़ने और जीयूआई से नया बनाने का प्रयास करें।

चैट में समस्या (ग्राहकों में अवसर बटन) के बारे में ... बिक्री में -> ग्राहकों काम करता है आधार मॉड्यूल से के रूप में। आप इसे जांचने के लिए डेवलपर मोड का उपयोग कर सकते हैं। इस रूप में res.partner ऑब्जेक्ट और base.view_partner_form का उपयोग करें।

इस फ़ॉर्म में अपने फ़ील्ड कैसे जोड़ें? बस 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> 

और उस तरह .py OpenERP के लिए अपने दृश्य जोड़ें:

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

सावधान रहें! इस दृश्य में res.partner मॉडल का उपयोग करें, लेकिन crm.lead पर नहीं। आशा है कि यह आपकी मदद करेगा!

संबंधित मुद्दे