2014-03-14 58 views
0

嗨,大家好我有兩個字段代碼和名稱我要插入​​到用戶輸入時,他們填寫表格(我使用嚮導)數據庫插入到數據庫中輸入字段

的.py

class cria_edita_recinto(osv.osv): 

_name='cria.edita.recinto' 
_description = 'Cria e Edita Recinto' 
_rec_name='code' 
_columns={ 

     'code':fields.char("Código",size=10), 
     'name':fields.char("Designação",size=50) 
     } 

_sql_constraints = [ 
    ('code', 'unique(code)', 'O codigo do recinto deve ser unico') 
] 
_order = 'code' 


def insert_recinto(self,cr, uid,vals, context=None): 


    lista=vals.values() 
    code=lista[0] 


    cr.execute("INSERT INTO gs_recintos (code,name) VALUES (%s,'jt')" %(code)) 
    return True 

cria_edita_recinto()

的.xml

<record model="ir.ui.view" id="cria_edita_recinto_form"> 

    <field name="name">cria.edita.recinto.form</field> 

     <field name="model">cria.edita.recinto</field> 

     <field name="arch" type="xml"> 

      <form string="cria edita recinto" version="7.0"> 
    <group string=" "> 
     <field name="code"/> 
     <field name="name"/> 


      </group> 
     <footer> 
      <button name="insert_recinto" string="Configurar Pisos" type="object" class="oe_highlight"/> 
      ou 
      <button string="Cancelar" class="oe_link" special="cancel"/> 
     </footer> 

     </form> 

     </field> 

</record> 

我有一個形象,如果你能幫助在這裏看到

http://help.openerp.com/question/46472/insert-into-database-the-input-fields/

+0

問題在insert_recinto方法,這個方法必須寫在該領域_column嚮導後的模型,張貼 – archetipo

+0

你可以做一些例子顯示如何將2個用戶輸入保存在數據庫中?我不能這樣做,因爲我不怎麼做:) –

+0

我編輯的問題請參閱我的班級那種方式不工作 –

回答

0

我解決了這個問題....

<group string=" "> 
<field name="code"/> 
<field name="name"/> 
<field name="nameBilhetes"/> 
<field name="recinto_id" on_change="insert_piso(code,name,nameBilhetes,recinto_id)"/> 
</group> 

我使用上的變化的方法和對我的.py使用

我查詢到插入到數據庫中。

請註明這個答案與記號這個解決方案解決了我的問題

+0

我認爲onchange並不是一個好主意,因爲如果你放棄記錄而不保存而不是仍然將記錄插入數據庫。 –

+0

是你是在我看到之後1秒,我用取消按鈕取消信息刪除 –

0

在OpenERP的7 osv.osv已被棄用,你可以使用orm.Model

Here指導線編寫的OpenERP一個很好的代碼。

您發佈的類是模塊類,但是如果您要使用嚮導編寫記錄 您需要在類嚮導中插入insert_recinto方法,而不是在模型類中。 在嚮導insert_recinto方法後,您可以使用orm方法(如your_class_object.write(cr,uid,id,vals,context))寫入數據。

+0

我是新的openerp我不明白很多..確定.py我發佈是我的嚮導py和.xml的嚮導xml。我必須將類(osv.osv)更改爲類(orm.Model)?我不明白「寫」的部分,你可以用一個簡單的例子來解釋嗎? :)抱歉隊友我在這裏新建 –

+0

我建議你閱讀開發者指南的書https://doc.openerp.com/7.0/contents/,並帶上一個合理的meneto:https://www.openerp。 com/files/memento/OpenERP_Technical_Memento_latest.pdf – archetipo

+0

我不知道我在哪裏可以看到我的問題解決方案:( –