根据两种不同树视图中的分类显示学生记录

时间:2017-03-02 07:06:37

标签: python openerp views

我正在研究学生模块。根据要求,一个应用程序的超级用户有权访问它,而另一个用户(教师)只根据分类查看所有学生,例如o级学生 我怎么能这样做?

<record id="student_view_form_status" model="ir.ui.view">
    <field name="name">Status</field>
    <field name="model">student.registration</field>
    <field name="type">tree</field>
    <field name="priority" eval="10" />
    <field name="arch" type="xml">
        <tree string="Status">
            <field name="registered_date" />
            <field name="status" />
            <field name="student_name" />
        </tree>
    </field>
</record>

<record id="patient_visits_action_form_status_view" model="ir.actions.act_window">
    <field name="name">Status</field>
    <field name="res_model">student.registration</field>
    <field name="view_type">tree</field>
    <field name="view_mode">tree</field>
    <field name="view_id" ref="student_view_form_status" />
</record>

2 个答案:

答案 0 :(得分:0)

我会给你简短的回答。使用DOMAIN。

更多详情请阅读官方Odoo documentation

答案 1 :(得分:0)

如果我理解你的正确,你希望特定用户只能看到定义级别的条目(学生)。让我更抽象一点:条目有2个或更多(x,y,...)状态,用户a(超级用户)可以看到所有条目,而用户b(教师)只能看到状态x的条目。 / p>

在Odoo中,您需要用户组(res.groups),访问权限(ir.model.access)和访问规则(ir.rule)才能完成此要求。

你会在Odoo的sale模块中找到一个很好的例子。该模块中有3个用户组:查看自己的潜在客户,查看所有潜在客户和经理。所有销售用户都可以读取销售订单(sale.order)(读取,创建和写入所有用户的访问权限)。 但是也定义了访问规则。销售订单有一个名为user_id的字段,在销售的上下文中是订单的销售员。规则被定义为群组的用户&#34;看到自己的潜在客户&#34;只能看到他们所在的订单或者没有人是推销员。下一个&#34;更高&#34;小组&#34;查看所有潜在客户&#34;通过自己的访问规则来覆盖此约束,该规则授予对所有销售订单的读取权限。

您可以根据需要使用相同的实现。有关更多信息,请查看sale模块,并查看Doc