Как решить проблему, когда меню, добавленное в существующее меню, не отображается

я разработал собственный модуль, который добавляет новое меню в модуль посещаемости, чтобы создать запрос на изменение посещаемости для обеих групп «посещаемость / ручная посещаемость» и «посещаемость / менеджер», проблема в том, что мое меню добавляется только для пользователя-администратора. Если я подключаюсь к пользователю, у которого есть менеджер прав доступа или ручная посещаемость для модуля посещаемости, он не будет отображаться. Любая идея для помощи? Вот мой код hr_attendance_modification_request_view.xml

<record model="ir.ui.view" id="view_attendance_modification_request_form">
    <field name="name">attendance.modification.request.form</field>
    <field name="model">attendance.modification.request</field>
    <field name="arch" type="xml">
        <form string="Attendance modification Request">
            <header>
                <field name="state" statusbar_visible="draft,waiting,approved,cancel" widget="statusbar" />
                <button name="submit_modification" string="Submit for manager" type="object" class="btn-primary"
                        attrs="{'invisible': [('state','not in','draft')]}"/>
                <button name="modification_approval" type="object" string="Approve" class="oe_highlight"
                        groups="hr_attendance.group_hr_attendance_manager"
                        attrs="{'invisible': [('state','not in','waiting')]}"/>
                <button name="modification_rejection" type="object" string="Cancel" class="oe_highlight"
                        groups="hr_attendance.group_hr_attendance_manager"
                        attrs="{'invisible': [('state','not in','waiting')]}"/>
            </header>
            <sheet>

                <h2>
                    <group>

                        <field name="employee"/>
                    </group>
                </h2>
                <group string="Morning" col="4" colspan="4">
                    <field name="time_check_in_1"/>
                    <field name="time_check_out_1"/>
                </group>
                <group string="Afternoon" col="4" colspan="4">
                    <field name="time_check_in_2"/>
                    <field name="time_check_out_2"/>
                </group>
                <label for="note"/>
                <field name="note"/>
            </sheet>
            <field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
            <field name="activity_ids" widget="mail_activity"/>
            <field name="message_ids" widget="mail_thread"/>


        </form>
    </field>
</record>
 <record model="ir.actions.act_window" id="attendance_modification_request_form_action">
    <field name="name">Attendance modification Request</field>
    <field name="type">ir.actions.act_window</field>
    <field name="res_model">attendance.modification.request</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form</field>
    <field name="domain">[]</field>
    <field name="context">{"search_default_requested_by":uid}</field>
    <!--            <field name="search_view_id" ref="view_attendance_request_search"/>-->
    <field name="help" type="html">
        <p class="oe_view_nocontent_create">
            Click to start a new attendance modification request process.
        </p>
    </field>
</record>
 <menuitem action="attendance_modification_request_form_action" id="menu_attendance_modification_request"
          name="Attendance modification request" parent="hr_attendance.menu_hr_attendance_manage_attendances"
          sequence="14" groups="hr_attendance.group_hr_attendance"/>
 <record model="ir.actions.act_window" id="action_view_attendance_request_approval">
    <field name="name">Attendance modification request to approve</field>
    <field name="res_model">attendance.modification.request</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form</field>
    <field name="domain">[('state','!=','approved'),('state','!=','cancel')]</field>

    <field name="help" type="html">
        <p class="oe_view_no_content_create">Create new Record
        </p>
    </field>
</record>
 <menuitem action="action_view_attendance_request_approval" id="menu_attendance_modification_request_to_approve"
          name="Attendance modification request to Approve"
          parent="hr_attendance.menu_hr_attendance_manage_attendances"
          sequence="15" groups="hr_attendance.group_hr_attendance_manager"/>

Убедитесь, что ваш менеджер имеет доступ к модели действия, которое вы передаете в меню. Означает, что модель, которая открыта, открывается при нажатии на это меню.

Akshay 22.05.2019 19:46

У него есть доступ к посещаемости модели, но мое меню отображается только для администратора.

Dhouha 22.05.2019 22:57

У вашего пользователя есть доступ к родительскому меню hr_attendance.menu_hr_attendance_manage_attendances?

Akshay 23.05.2019 18:02
3 метода стилизации элементов HTML
3 метода стилизации элементов HTML
Когда дело доходит до применения какого-либо стиля к нашему HTML, существует три подхода: встроенный, внутренний и внешний. Предпочтительным обычно...
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
0
3
32
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

я должен добавить файл ir.model.access.csv

id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_attendance_modification_request,access_attendance_modification_request,model_attendance_modification_request,hr_attendance.group_hr_attendance_manager,1,1,1,1 access_attendance_modification_request,access_attendance_modification_request,model_attendance_modification_request,hr_attendance.group_hr_attendance,1,1,1,1

Другие вопросы по теме