Я унаследовал модуль (модуль набора персонала), а затем попытался обновить данные XML, но все мои попытки не увенчались успехом.
Я попытался обновить группу, например hr_recruitment.group_hr_recruitment_user, но обновление все еще не работает.
Смотрите мои коды: xml ->
<?xml version='1.0' encoding='utf-8'?>
<odoo>
<data noupdate = "0">
<record id = "hr_recruitment.stage_job1" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job2" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job3" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job4" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job5" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
</data>
</odoo>
питон ->
from odoo import models, fields, api, _
класс hrRecruitmentStageInherit(models.Model): _inherit = "hr.recruitment.stage"
group_ids = fields.Many2many('res.groups')
stage_type = fields.Selection(
selection=[
('initiation', 'Initiation'),
('interview', 'Interview'),
('selection_process', 'Selection Process'),
('documentation', 'Documentation'),
('audit', 'Audit'),
('accounts_finance', 'Accounts / finance'),
('background_checks', 'Background Checks')
],
string='Stage Type'
)
active = fields.Boolean(default=True)
манифест ->
{
'name': "HR CBT Recruitment ",
'sequence': 10,
'depends': [
'base',
'hr_recruitment',
'hr_recruitment_survey',
'website_hr_recruitment',
'hr_recruitment_sign',
],
'data': [
'security/ir.model.access.csv',
'security/security_view.xml',
'views/hr_recruitment_stage_inherit.xml',
'data/hr_recruitment_data.xml', # Where the records are
],
}
Я ожидал, что записи будут заархивированы
Предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.
Как вы можете видеть записи, я пытался обновить существующие записи, но мое обновление не работает. Я предоставил больше кодов, чтобы дать вам контекст.
@Robert Этот вопрос закрыт, поскольку данные отладки отсутствуют, но, к сожалению, вы не можете получить подробную информацию об отладке. Все, что вам нужно, есть в вопросе. Закрытие этого вопроса из-за отладочных данных неверно.






В режиме обновления запись не будет обновляться , если узел данных явно откажется от этого с помощью @noupdate = "1". Эти записи имеют пометку Необновляемые.
Вам необходимо установить noupdate на False и обновить записи (затем сбросить noupdate на True)
Пример:
<function name = "write" model = "ir.model.data">
<function name = "search" model = "ir.model.data">
<value eval = "[('name', '=like', 'stage_job_'), ('model', '=', 'hr.recruitment.stage')]"/>
</function>
<value eval = "{'noupdate': False}"/>
</function>
<record id = "hr_recruitment.stage_job1" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job2" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job3" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job4" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<record id = "hr_recruitment.stage_job5" model = "hr.recruitment.stage">
<field name = "active">0</field>
</record>
<function name = "write" model = "ir.model.data">
<function name = "search" model = "ir.model.data">
<value eval = "[('name', '=like', 'stage_job_'), ('model', '=', 'hr.recruitment.stage')]"/>
</function>
<value eval = "{'noupdate': True}"/>
</function>
Ух ты! Это действительно здорово! Я это проверю.
Я проверил это, прежде чем опубликовать этот ответ!
Извините, это действительно сработало. Но мне потребовалось установить noupdate = "0", поскольку я обновляю модуль, а не устанавливаю. Спасибо за это.
Что вы пробовали? Не могу увидеть ваш код.