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

Hi,

I'm using Odoo ONLINE and I need to add the possibility for a user to upload files from a Survey.

It's seems that we can't use Odoo Apps to satisfy the quest but maybe we can counter this situation by collecting the file's input datas with a JS script and send it to store the files in the ir.attachments module and link his ID to the corresponding survey module.


IS IT POSSIBLE TO CREATE A NEW RECORD FROM A JS FILE ? IF SO, HOW ?


Yours faithfully,

RANDRIATAVY Mandresy

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

Yes, you can call python function with js rpc query and you can pass arguments to the python function.

Example :

rpc.query({
model: 'your.model,
method: 'your_function_name',
args: [agr1, arg2],
}).then(function(result) {

//after success

});

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

Thanks you I’ll try

Лучший ответ

Hi,
It is possible to create a record from a js file. There are two ways to do it. 

You can use rpc.query or ajax.jsonRpc.

Using rpc.query, you can define a model and a method inside the model and pass arguments as required to it. The method will be triggered and you can get the value returned by the python function in the .then method of js.

Example

var rpc = require('web.rpc');

rpc.query({
model: 'your_model',
method: 'your_function',
args: [arguments],
}).then(function(result) {
// result will have the value returned from python function.
});

Using ajax.jsonRpc, you can define a route to which the call will be passed. The route will be of type json. 

var ajax = require('web.ajax');

ajax.jsonRpc('/route_name',
'call',{'arg_1': arg_1_value, 'arg_2': arg_2_value})
.then(function (result) {
// result will have the value returned from the python controller.
});

In python,

@route(['/route_name'], type='json', auth='your_authentication')
def route_name(self, **kwargs):
return True

Regards

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

Thanks for the detailed answer, sounds Aravind was right too.

Related Posts Ответы Просмотры Активность
0
июл. 24
1239
12
янв. 16
35736
2
июн. 25
2398
0
июл. 23
2329
1
июн. 23
2040