正しい方法でコードを編集しました。今、それは働いています。
これが私のコードです:
def _random_letter(self, cr, uid, ids, name, args, context):
num=[]
for i in range(5):
res = random.choice([1, 2, 3, 5, 9])
num.append(res)
print (num)
return num
def _mytest_query(self, cr, uid, ids, name, args, context):
cr.execute("""update checkroll_plucker set worker_name =concat('worker','%s') where id='1'""", self._random_letter(cr, uid, ids, name, args, context))
cr.commit()
また、どのパラメーターを関数に渡すかについてもまだ混乱しています。私は開発者の本を読んでいますが、明確な考えがありません。以下にそれらについて言及しますが、正しい場合は修正してください。
例:
self, cr, uid, ids, name, args, context
self = call to current class of that method called
cr = current row in the table
uid = user id for check if he authorized or not for run this function
name = column name we need to insert
context = language/time details (but what is the use of it.more times it equals to None)