0
В модуле openucat при генерации расписания я хочу загрузить объекты, отфильтрованные факультетом. Это тот шнур, который я попробовал.openerp фильтрация данных по поменному полю
class generate_time_table_line(osv.osv_memory):
_name = 'gen.time.table.line'
_description = 'Generate Time Table Lines'
_rec_name = 'day'
_columns = {
'gen_time_table': fields.many2one('generate.time.table', 'Time Table', required=True),
'faculty_id': fields.many2one('op.faculty', 'Faculty', required=True),
'subject_id': fields.many2one('op.subject', 'Subject', required=True),
'day': fields.selection([('1', 'Monday'),
('2', 'Tuesday'),
('3', 'Wednesday'),
('4', 'Thursday'),
('5', 'Friday'),
('6', 'Saturday'),
('7', 'Sunday'), ]
, 'Day', required=True),
'period_id': fields.many2one('op.period', 'Period', required=True),
}
функция ......
def onchange_faculty(self, cr, uid, ids, faculty_id, context=None):
values = {'faculty_subject_ids': False}
faculty = self.pool.get('op_faculty').browse(cr, uid, id(faculty_id), context=context)
values['faculty_subject_ids'] = faculty.faculty_subject_ids
return {'value': values}
и это поле в XML
<field name="faculty_id" on_change='onchange_faculty(faculty_id, context)'/>
, изменяя факультет я получил эту ошибку
2015-02-05 06:41:59,207 4104 ERROR myschool openerp.osv.osv: Uncaught exception
Traceback (most recent call last):
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\osv\osv.py", line 132, in wrapper
return f(self, dbname, *args, **kwargs)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\osv\osv.py", line 199, in execute
res = self.execute_cr(cr, uid, obj, method, *args, **kw)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\osv\osv.py", line 187, in execute_cr
return getattr(object, method)(cr, uid, *args, **kw)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\src\myschool\wizard\generate_time_table.py", line 156, in onchange_faculty
faculty = self.pool.get('op_faculty').browse(cr, uid, id(faculty_id), context=context)
AttributeError: 'NoneType' object has no attribute 'browse'
2015-02-05 06:41:59,233 4104 ERROR myschool openerp.netsvc: 'NoneType' object has no attribute 'browse'
Traceback (most recent call last):
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\netsvc.py", line 292, in dispatch_rpc
result = ExportService.getService(service_name).dispatch(method, params)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\service\web_services.py", line 626, in dispatch
res = fn(db, uid, *params)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\osv\osv.py", line 190, in execute_kw
return self.execute(db, uid, obj, method, *args, **kw or {})
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\osv\osv.py", line 132, in wrapper
return f(self, dbname, *args, **kwargs)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\osv\osv.py", line 199, in execute
res = self.execute_cr(cr, uid, obj, method, *args, **kw)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\server\openerp\osv\osv.py", line 187, in execute_cr
return getattr(object, method)(cr, uid, *args, **kw)
File "E:\Development\MySchool_New\Source\trunk\openerp.myschool\src\myschool\wizard\generate_time_table.py", line 156, in onchange_faculty
faculty = self.pool.get('op_faculty').browse(cr, uid, id(faculty_id), context=context)
AttributeError: 'NoneType' object has no attribute 'browse'
2015-02-05 06:41:59,293 4104 INFO myschool werkzeug: 127.0.0.1 - - [05/Feb/2015 06:41:59] "POST /web/dataset/call_kw HTTP/1.1" 200 -
Как я могу решить эту проблему ...?
На этот раз я получил эту ошибку. XmlHttpRequestError INTERNAL SERVER ERROR 500 Внутренняя ошибка сервера
Internal Server Error
Сервер обнаружил внутреннюю ошибку и не удалось выполнить ваш запрос. Либо сервер перегружен, либо есть ошибка в приложении.
– Chamalэто ошибка сервера и не связанная с этим кодом. Возможно, вам нужно перезапустить сервер postgres после того, как он будет работать –
он говорит так: raise TypeError (repr (o) + "не является сериализуемым JSON") TypeError: browse_record (op.subject, 1) не является сериализуемым JSON – Chamal