小编atc*_*han的帖子

限制,无操作并在字段的ondelete可选参数中设置默认值

我正在学习关于ondelete参数的字段的可选参数.这些是预定义的值:"cascade","set null","restrict","no action","set default"

任何人都可以详细解释一下

  • RESTRICT和NO ACTION之间的区别.
  • 如何在OpenERP 7中使用SET DEFAULT?
    • 在哪里设置字段的默认值?
    • 如何在python代码本身中定义set default value?

openerp

3
推荐指数
1
解决办法
3459
查看次数

为自定义模块定义了多少2个

我试图在我的自定义模块"notebook"中使用many2many关系字段.代码如下:

notebook.py:

from osv import fields, osv
import time

class notebook(osv.osv):
    _name = "notebook"
    _description = "Simple Notebook"
    _columns = {
        'title' : fields.char('Title', size=30, required=True),
        'tag_ids': fields.many2many(
                    'hello',
                    'title',
                    'name',
                    string="Tags"
                                ),
    }

notebook()

class hello(osv.osv):
    _name = 'hello'
    _columns = {
            'name':fields.char('Name',size=30),
            'note_ids': fields.many2many(
                                'notebook',
                                'name',
                                'title',
                                string="Notebooks"
                                        ),
                    } 
hello()
Run Code Online (Sandbox Code Playgroud)

notebook_view.xml:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>
        <record model="ir.ui.view" id="notebook_form_view">
            <field name="name">notebook.form</field>
            <field name="model">notebook</field>
            <field name="type">form</field>
            <field name="arch" type="xml">
                <form string="Notebook">
                    <field name="title" />
                    <field name="tag_ids" widget="many2many_tags"/>
                </form> …
Run Code Online (Sandbox Code Playgroud)

openerp

2
推荐指数
1
解决办法
4553
查看次数

禁止从非瞬态模型到TransientModel的Many2One关系

我试图在创建房间(作为产品)时提供产品的库存数量,所以使用了_inherits的stock.change.quantity.qty来存储使用的数量。

我的代码:

class hotel_room(osv.osv):
    _name = 'hotel.room'
    _inherits = {
                 'product.product':'product_id',
                 'stock.change.product.qty': 'quantity_id'
    }
    _description = 'Hotel Room'
    _columns = {
        'product_id': fields.many2one('product.product', 'Product_id', required=True, ondelete='cascade'),
        'quantity_id': fields.many2one('stock.change.product.qty', 'Quantity_id', required=True, ondelete='cascade'),
        'floor_id':fields.many2one('hotel.floor', 'Floor No', required=True),
        'max_limit':fields.integer('Max Person Limit'),
        'desc': fields.text('Description'),
        'avail_status':fields.selection([('unassigned', 'Unassigned'), ('confirmed', 'Confirmed'), ('assigned', 'Assigned')], 'Room Status'),
        'room_amenities':fields.many2many('hotel.room.amenities', 'temp_tab', 'room_amenities', 'rcateg_id', 'Room Amenities'),
    }
    _defaults = {
        'name': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'hotel.room'),
        'is_room': True,
        'new_quantity': 1.00,
        'avail_status':'unassigned'
    }
hotel_room()
Run Code Online (Sandbox Code Playgroud)

追溯:

2013-08-14 06:04:05,611 7899 INFO hms …
Run Code Online (Sandbox Code Playgroud)

error-handling openerp

2
推荐指数
1
解决办法
2056
查看次数

标签 统计

openerp ×3

error-handling ×1