Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
9 Trả lời
60842 Lượt xem

Hi everyone;i'm trying to add constraints of unicity;i can show the message in the beginning but after 2 tests i show this message: UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 27: ordinal not in range(128) any idea please

myclass.py

class time_table_line(osv.osv): _description ='Time Table Line' _name = 'time.table.line' _rec_name ="table_id" _columns = {

    'teacher_id': fields.many2one('hr.employee', 'Nom du professeur',),
    'subject_id': fields.many2one('subject.subject', 'Nom de la matiere'),
    'table_id': fields.many2one('time.table', 'TimeTable'),
    'start_time' : fields.datetime('Start Time', required=True ),
    'end_time' : fields.float('End Time', required=True ),
    'sale_id' : fields.many2one('school.sale', 'Salle',required=True ),
}
_sql_constraints = [
('sale', 'unique(sale_id,start_time,end_time)', 'Salle existante')
]

_sql_constraints = [
('prof', 'unique(teacher_id,start_time,end_time)', 'Prof existant')
]

time_table_line()

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Another reason could be that you forgot other files in the addons directory root.  Happened to me seconds ago, I referenced the addons folder but not only it contained my_module_name1/ or my_module_name2/ etc, but also a jpeg :s

Stupid of me but didn't take to much time to realize it.

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hy,

Have a look there : https://github.com/odoo/odoo/issues/773

Ảnh đại diện
Huỷ bỏ

@oumaima if my answer is correct, thnaks for voting

Câu trả lời hay nhất

Hi,

Maybe add the charset at the beginning of your source file :

# -*- coding: utf-8 -*-
Ảnh đại diện
Huỷ bỏ
Tác giả

Hi,thank you replay i added it but i still have the same problem;after 2 tests i show this error

in your code python if any string contains accent, to add the prefix u : for example replace « "é" » by « u"é" »

Tác giả

I have no string containing accent;any other idea please

Câu trả lời hay nhất

Try to define your string as unicode:

u'Nom du professeur'

'teacher_id': fields.many2one('hr.employee', u'Nom du professeur',),

 

[]s

Ảnh đại diện
Huỷ bỏ

his error is due to unicode and there is no special character in 'Nom du professeur'. in odoo/python to avoid this type of error, for char, use you must encode in utf-8: from openerp.tools import ustr my_char = ustr("spécial évènement")

Bài viết liên quan Trả lời Lượt xem Hoạt động
2
thg 9 18
6988
1
thg 3 15
4753
2
thg 3 15
4527
1
thg 3 15
5504
0
thg 11 24
7