コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
6563 ビュー

I want to create a new object type that inherits from res.partner and have the same formatting in the form view but my inherited view appears all on one page with no notebooks or pages.

in my county.py :

class county_citizen(osv.osv):
_name = 'county.citizen'
_description = 'County Citizen'
_inherit = 'res.partner'
_columns = {
  'citizen_id' : fields.char('Identification No',size=15,required=True,help="The National ID of the Citizen"),
  'citizen_passport_id': fields.char('Passport No',size=64),
  'citizen_otherid': fields.char('Other Id', size=64),
  'citizen_gender' : fields.selection([('male','Male'),('female','Female')], 'Gender',required=True),
  'citizen_photo': fields.binary('Photo',help="Upload a Citizen's Passport Image"),
  'citizen_work': fields.char('Occupation',size=32,required=True),
  'citizen_notes': fields.text('Notes',help="Comments of citizen's role,work or duty in the county.")
  }
def _get_photo(self,cr,uid,context=None):
  photo_path = addons.get_module_resource('county','images','photo.png')
  return open(photo_path,'rb').read().encode('base64')
_defaults = {
  'citizen_photo': _get_photo
  }
sql_constraints = [('id_unique','unique (citizen_id)','The citizen identification is unique')]
#end of class

county_citizen()

and in my county_view.xml :

 <record id="view_citizen_form" model="ir.ui.view">
        <field name="name">Citizens</field>
        <field name="model">county.citizen</field>
        <field name="inherit_id" ref="base.view_partner_form"/>
        <field name="arch" type="xml">
                <notebook position="inside">
                    <page string="County Citizen">
                    <group colspan="2" col="1">
                        <field name="citizen_photo" widget='image' width="100" height="100" nolabel="1"/>
                    </group>
                    </page>
                    <page string="Personal Information">
                        <group col="2" colspan="2" >
                            <separator colspan="2" string="Social IDs"/>
                            <field name="citizen_id"/>
                            <field name="citizen_passport_id"/>
                            <field name="citizen_otherid"/>
                        </group>
                        <group col="2" colspan="2">
                            <separator colspan="2" string="Gender"/>
                            <field name="citizen_gender"/>
                        </group>
                        <group col="2" colspan="2">
                            <separator colspan="2" string="Job Information"/>
                            <field name="citizen_work"/>
                        </group>
                    </page>
                    <page string="Petitions">
                        <group col="2" colspan="2">

                        </group>
                    </page>
                    <page string="Permits"></page>
                    <page string="Complaints"></page>
                    <page string="Notes" groups="">
                        <field colspan="4" nolabel="1" name="citizen_notes"/>
                    </page>
                </notebook>
        </field>
    </record>

Kindly Help it is Urgent. Thanks

アバター
破棄
最善の回答

If you are inheriting a model and creating a new model with it you can't inherit the XML view too, if you want to add fields to res.partner this is valid but when you are creating a new model with it you have to create your own view. If you want it copy all the XML code from res.partner and add your fields there.

アバター
破棄

it is not necessary to give a name to the inherited model, please remove that line of code and see that changes

著作者

thank you guys

関連投稿 返信 ビュー 活動
2
3月 15
8710
3
10月 20
5759
2
3月 23
3550
1
3月 20
3469
12
12月 18
34785