跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 浅色
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • 深色
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

  1. 主页
  2. 版块
  3. Odoo 新手求助
  4. user_has_groups 里的 用户组别名怎么获取

user_has_groups 里的 用户组别名怎么获取

已定时 已固定 已锁定 已移动 已解决 Odoo 新手求助
8 帖子 2 发布者 3.6k 浏览 1 关注中
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 元 离线
    元 离线
    元宝
    发表于 最后由 编辑
    #1

    比如我要判断这个用户是不是库存的管理员 user_has_groups('stock.XXXXXX');
    里面的stock.XXX 该怎么填写。这个值可以在哪里看到

    1 条回复 最后回复
    0
    • D 离线
      D 离线
      digitalsatori
      管理员
      发表于 最后由 digitalsatori 编辑
      #4

      在模块的翻译文件里 搜索 model:res.groups。大致可以找到需要的用户组名。如何找到自己创建的用户组的name。如图是库存用户的 groupsname

      这个找法不太正确啊😲

      用户组其实就是res_groups表中的一条记录。这条记录在Odoo中一般是通过xml的导入生成的。一般用户组的记录都是放在security目录下,比如你所说的stock模块的库存管理员的用户组的定义就在stock/security/stock_security.xml文件中定义, 注意下面的id(group_stock_manager):

      <?xml version="1.0" encoding="utf-8"?>
      <odoo>
      <data noupdate="0">
       ...
          <record id="group_stock_manager" model="res.groups">
              <field name="name">Manager</field>
              <field name="category_id" ref="base.module_category_warehouse_management"/>
              <field name="implied_ids" eval="[(4, ref('group_stock_user'))]"/>
              <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]"/>
          </record>
      ....
      

      【上海先安科技】(tony AT openerp.cn)

      元 1 条回复 最后回复
      0
      • 元 离线
        元 离线
        元宝
        发表于 最后由 元宝 编辑
        #2

        在模块的翻译文件里 搜索 model:res.groups。大致可以找到需要的用户组名。如何找到自己创建的用户组的name。如图是库存用户的 groupsname 613201bf-44f6-4e5d-ac04-23ae93d3021a-image.png

        1 条回复 最后回复
        0
        • 元 离线
          元 离线
          元宝
          发表于 最后由 编辑
          #3

          已解决 ir_model_data 筛选 model 是res.group 就是用户所在的用户组了。name是用户组的名称 res_id 对应res_groups 里的用户组主键id

          D 1 条回复 最后回复
          0
          • D 离线
            D 离线
            digitalsatori
            管理员
            发表于 最后由 digitalsatori 编辑
            #4

            在模块的翻译文件里 搜索 model:res.groups。大致可以找到需要的用户组名。如何找到自己创建的用户组的name。如图是库存用户的 groupsname

            这个找法不太正确啊😲

            用户组其实就是res_groups表中的一条记录。这条记录在Odoo中一般是通过xml的导入生成的。一般用户组的记录都是放在security目录下,比如你所说的stock模块的库存管理员的用户组的定义就在stock/security/stock_security.xml文件中定义, 注意下面的id(group_stock_manager):

            <?xml version="1.0" encoding="utf-8"?>
            <odoo>
            <data noupdate="0">
             ...
                <record id="group_stock_manager" model="res.groups">
                    <field name="name">Manager</field>
                    <field name="category_id" ref="base.module_category_warehouse_management"/>
                    <field name="implied_ids" eval="[(4, ref('group_stock_user'))]"/>
                    <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]"/>
                </record>
            ....
            

            【上海先安科技】(tony AT openerp.cn)

            元 1 条回复 最后回复
            0
            • 元 元宝

              已解决 ir_model_data 筛选 model 是res.group 就是用户所在的用户组了。name是用户组的名称 res_id 对应res_groups 里的用户组主键id

              D 离线
              D 离线
              digitalsatori
              管理员
              发表于 最后由 digitalsatori 编辑
              #5

              @元宝

              已解决 ir_model_data 筛选 model 是res.group 就是用户所在的用户组了。name是用户组的名称 res_id 对应res_groups 里的用户组主键id

              这也的确是一个方法,因为所有从xml导入的数据都会同时在ir.model.data表中留下记录。

              【上海先安科技】(tony AT openerp.cn)

              1 条回复 最后回复
              0
              • D digitalsatori

                在模块的翻译文件里 搜索 model:res.groups。大致可以找到需要的用户组名。如何找到自己创建的用户组的name。如图是库存用户的 groupsname

                这个找法不太正确啊😲

                用户组其实就是res_groups表中的一条记录。这条记录在Odoo中一般是通过xml的导入生成的。一般用户组的记录都是放在security目录下,比如你所说的stock模块的库存管理员的用户组的定义就在stock/security/stock_security.xml文件中定义, 注意下面的id(group_stock_manager):

                <?xml version="1.0" encoding="utf-8"?>
                <odoo>
                <data noupdate="0">
                 ...
                    <record id="group_stock_manager" model="res.groups">
                        <field name="name">Manager</field>
                        <field name="category_id" ref="base.module_category_warehouse_management"/>
                        <field name="implied_ids" eval="[(4, ref('group_stock_user'))]"/>
                        <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]"/>
                    </record>
                ....
                
                元 离线
                元 离线
                元宝
                发表于 最后由 编辑
                #6

                @digitalsatori
                fb6aaa47-dc1b-4003-a38b-ef982ad1cbca-image.png
                daac18b6-2ed2-4bfc-89af-1f73a7818b1a-image.png
                我新增一个用户组的话 我怎么在页面修改name。还是说 新增用户组的操作 最好是通过 security 去新增用户组 然后更新模块。

                1 条回复 最后回复
                0
                • D 离线
                  D 离线
                  digitalsatori
                  管理员
                  发表于 最后由 digitalsatori 编辑
                  #7

                  @元宝
                  在界面中新增的群组是没有xmlid的,也就是没有ir.model.data表的一条对应记录从而没有记录xmlid的name字段值,比如group_stock_manager。
                  这样你就不能在程序中通过xmlid来引用这条记录,当然你仍然可以通过search这个组的比如组名来得到这条记录。
                  如果你需要在程序中引用到对应用户组,最好的办法是在你的模块的security目录下通过xml来添加用户组。

                  【上海先安科技】(tony AT openerp.cn)

                  元 1 条回复 最后回复
                  0
                  • D digitalsatori

                    @元宝
                    在界面中新增的群组是没有xmlid的,也就是没有ir.model.data表的一条对应记录从而没有记录xmlid的name字段值,比如group_stock_manager。
                    这样你就不能在程序中通过xmlid来引用这条记录,当然你仍然可以通过search这个组的比如组名来得到这条记录。
                    如果你需要在程序中引用到对应用户组,最好的办法是在你的模块的security目录下通过xml来添加用户组。

                    元 离线
                    元 离线
                    元宝
                    发表于 最后由 编辑
                    #8

                    @digitalsatori 在 user_has_groups 里的 用户组别名怎么获取 中说:

                    的办法是在你的模块的security目录下通过xml来添加用

                    ♥ 好的。谢谢你!

                    1 条回复 最后回复
                    0

                    你好!看起来您对这段对话很感兴趣,但您还没有一个账号。

                    厌倦了每次访问都刷到同样的帖子?您注册账号后,您每次返回时都能精准定位到您上次浏览的位置,并可选择接收新回复通知(通过邮件或推送通知)。您还能收藏书签、为帖子顶,向社区成员表达您的欣赏。

                    有了你的建议,这篇帖子会更精彩哦 💗

                    注册 登录
                    回复
                    • 在新帖中回复
                    登录后回复
                    • 从旧到新
                    • 从新到旧
                    • 最多赞同


                    • 登录

                    • 没有帐号? 注册

                    • 登录或注册以进行搜索。
                    • 第一个帖子
                      最后一个帖子
                    0
                    • 版块
                    • 标签
                    • 热门
                    • 用户
                    • 群组