我正在创建一个简单的表单,您必须输入密码才能执行操作,但我无法弄清楚如何不在数据库中存储密码。当我把 store = False 时,我的模块无法编译。此外,我想知道在用户编写密码时是否有隐藏密码的方法。
最好不要在数据库中创建任何表,但我需要创建一个模型,因为我有一个调用方法的按钮。我不知道是否有办法避免创建表格。
siteweb_migration_wizard.py
# -*- coding: utf-8 -*-
from openerp import models, fields, api, tools
class SitewebMigrationWizard(models.TransientModel):
_name = 'siteweb.migration'
password = fields.Char(string="Mot de passe", store=False)
@api.multi
def migration(self):
password = self.password
print(password)
siteweb_migration_wizard.xml
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="ir.ui.view" id="siteweb_migration_wizard_form">
<field name="name">siteweb.migration.form</field>
<field name="model">siteweb.migration</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Migrer" version="8.0">
<p>Voulez-vous vraiment migrer vers la BD du site?</p>
<group>
<field name="password"/>
</group>
<button string="Confirmer" type="object" name="migration"/>
<button string="Annuler" class="oe_highlight" special="cancel"/>
</form>
</field>
</record>
<record id="action_siteweb_migration" model="ir.actions.act_window">
<field name="name">Migration du site</field>
<field name="res_model">siteweb.migration</field>
<field name="view_type">form</field>
<field name="view_id" ref="siteweb_migration_wizard_form"/>
<field name="multi">True</field>
<field name="target">new</field>
</record>
<menuitem action="action_siteweb_migration" id="menu_siteweb_migration" name="Migration du site"
parent="siteweb_createch.menu_siteweb"/>
</data>
</openerp>
答案 0 :(得分:1)
要记住一些要点
@api.multi def migration(self): password = self.password print(password) self.password = False
答案 1 :(得分:0)
您可以简单地使用 PASSWORD ,因为您已将其声明为self.password的var名称。 SO:密码=错误