Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
4956 Zobrazení

I'm trying to upload multiple files from the Odoo website (student files), and then call a controller with method post to create a record and save the attachment.

this is my module  student.py

ref = fields.Char(string="Ref")
first_name = fields.Char(string="Firstname")
last_name = fields.Char(string="Lastname")
task_attachment = fields.Many2many(comodel_name="ir.attachment",
relation="m2m_ir_identity_card_rel",
column1="m2m_id",
column2="attachment_id",
string="Identity Card")
And this is my controller
@http.route('/create/webstudent', type="http", auth="user", website=True)
def create_webpatient(self, **kw):
if request.httprequest.method == 'POST':
new_task = request.env['university.student'].sudo().create(kw)
if 'task_attachment' in request.params:
attached_files = request.httprequest.files.getlist('task_attachment')
for attachment in attached_files:
attached_file = attachment.read()
request.env['ir.attachment'].sudo().create({
'name': attachment.filename,
'res_model': 'university.student',
'res_id': new_task.id,
'type': 'binary',
'datas_fname': attachment.filename,
'datas': attached_file.encode('base64'),
})

return request.render("om_university.student_thanks", {})
When I click to the submit button this error show up :
ValueError: Wrong value for university.student.task_attachment:
can anybody help me please!
Avatar
Zrušit
Autor

And this is my input on web_form.xml :
<input type="file" name="task_attachment" multiple="true"/>

Related Posts Odpovědi Zobrazení Aktivita
4
bře 24
4923
1
bře 24
1559
1
zář 22
3672
2
čvc 22
2238
1
čvn 22
2783