Openerp/module 2

จาก Theory Wiki
รุ่นแก้ไขเมื่อ 14:03, 19 พฤศจิกายน 2556 โดย Jittat (คุย | มีส่วนร่วม) (หน้าที่ถูกสร้างด้วย 'ไฟล์ของโมเดลจากครั้งก่อน: '''easynote.py''' <syntaxhighlight lang="python"> from osv ...')
(ต่าง) ←รุ่นแก้ไขก่อนหน้า | รุ่นแก้ไขล่าสุด (ต่าง) | รุ่นแก้ไขถัดไป→ (ต่าง)
ไปยังการนำทาง ไปยังการค้นหา

ไฟล์ของโมเดลจากครั้งก่อน:

easynote.py

from osv import osv, fields
 
class Category(osv.Model):
    _name = 'easynote.category'
    _columns = {
        'name': fields.char('Name', size=50, required=True),
        'note_ids': fields.one2many('easynote.note', 'category_id', 'Notes')
    }

class Note(osv.Model):
    _name = 'easynote.note'
    _rec_name = 'title' 
    _columns = {
        'title': fields.char('Title', size=100, required=True),
        'body': fields.text('Body', required=True),
        'number': fields.integer('Number'),
        'category_id': fields.many2one('easynote.category', 'Category'),
    }

easynote_view.xml

<?xml version="1.0" encoding="utf-8"?>
<openerp>
  <data>
    <record model="ir.ui.view" id="view_easynote_note_tree">
      <field name="name">easynote.note.tree</field>
      <field name="model">easynote.note</field>
      <field name="arch" type="xml">
        <tree string="Note">
          <field name="title"/>
          <field name="body"/>
          <field name="number"/>
          <field name="category_id"/>
        </tree>
      </field>
    </record>
 
    <record model="ir.ui.view" id="view_easynote_note_form">
        <field name="name">easynote.note.form</field>
        <field name="model">easynote.note</field>
        <field name="arch" type="xml">
          <form string="Note" version="7.0" class="oe_form_nomargin">
            <field name="title" />
            <field name="body" widget="html" class="oe_memo" editor_height="100px" />
            <field name="number"/>
            <field name="category_id"/>
          </form>
        </field>
    </record>
 
    <record model="ir.actions.act_window" id="action_easynote_note">
      <field name="name">EasyNotes</field>
      <field name="res_model">easynote.note</field>
      <field name="view_type">form</field>
      <field name="view_mode">tree,form</field>
      <field name="context">{'search_default_open_true':True}</field>
      <field name="help" type="html">
        <p class="oe_view_nocontent_create">
          Click to add a note. blah blah
        </p>
        <p>
          Use notes to organize personal tasks or notes. 
        </p>
      </field>
    </record>

    <record model="ir.ui.view" id="view_easynote_category_tree">
      <field name="name">easynote.category.tree</field>
      <field name="model">easynote.category</field>
      <field name="arch" type="xml">
        <tree string="Categry">
          <field name="name"/>
          <field name="note_ids"/>
        </tree>
      </field>
    </record>
 
    <record model="ir.ui.view" id="view_easynote_category_form">
        <field name="name">easynote.category.form</field>
        <field name="model">easynote.category</field>
        <field name="arch" type="xml">
          <form string="Category">
            <field name="name"/>
            <field name="note_ids"/>
          </form>
        </field>
    </record>
 
    <record model="ir.actions.act_window" id="action_easynote_category">
      <field name="name">Category</field>
      <field name="res_model">easynote.category</field>
      <field name="view_type">form</field>
      <field name="view_mode">tree,form</field>
      <field name="context">{'search_default_open_true':True}</field>
      <field name="help" type="html">
        <p class="oe_view_nocontent_create">
          Click to add a category.
        </p>
      </field>
    </record>
 
    <menuitem name="Notes" id="menu_easynote_top" 
              parent="" sequence="1" 
              action="easynote.action_easynote_note"/>
 
    <menuitem name="Your Notes" id="menu_easynote_main" 
              parent="menu_easynote_top" sequence="1"/>
 
    <menuitem name="Notes" id="menu_easynote_note" 
              parent="menu_easynote_main" sequence="1" 
              action="easynote.action_easynote_note"/>
    <menuitem name="Categories" id="menu_easynote_category" 
              parent="menu_easynote_main" sequence="2" 
              action="easynote.action_easynote_category"/>
  </data>
</openerp>