Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
2 Ответы
4248 Представления

Hi guys,

My question is how to dynamically change 'type_ids' value:

 def _get_type_common(self, cr, uid, context):
     ids = self.pool.get('project.task.type').search(cr, uid, [('case_default','=',1)],
     context=context)
return id

_defaults = { 'type_ids': _get_type_common }

My model is inherited from another model but have different view. I want to change this default value of 'type_ids' in my new view but not changing it in original view. I want to add something like this:

     ids = self.pool.get('project.task.type').search(cr, uid, [('case_default','=',1),('task_type_is_project','=',False)], context=context)

It is possible?

Аватар
Отменить
Лучший ответ

You redefine method _get_type_common and select correct ids with "if" based on context value.

Аватар
Отменить
Автор

Thanks for your suggestion ! ;)

Автор Лучший ответ
def _get_type_common2(self, cr, uid, context):
 if (context['params']['action']==171):
 ids =self.pool.get('project.task.type').search(cr, uid, [('case_default','=',1),
('task_type_is_project','=',False)], context=context)
elif (context['params']['action']==142):
 ids = self.pool.get('project.task.type').search(cr, uid, [('case_default','=',1),
('task_type_is_project','=',True)], context=context)
 return ids

Thank you zbik! This code works perfect!

Аватар
Отменить
Related Posts Ответы Просмотры Активность
0
мар. 15
4157
1
янв. 25
1172
1
окт. 22
28203
0
авг. 16
2897
7
июл. 16
6092