跳至內容
選單
此問題已被標幟
1 回覆
4531 瀏覽次數

How to deal with binary field in odoo 10 by web service ripcord php to upload attachment files in ir.attachment table 

頭像
捨棄
最佳答案

To upload file with web service, you can convert file in base64.

You can write as following :

<?php
$url = 'your odoo url';
$db = 'your database name';
$username = 'admin';
$password = 'admin';
require_once 'ripcord/ripcord.php';

$info = ripcord::client('https://demo.odoo.com/start')->start();
$common = ripcord::client($url . '/xmlrpc/2/common');
$models = ripcord::client("$url/xmlrpc/2/object");

$b64image = base64_encode(file_get_contents('your image path'));
$uid = $common->authenticate($db, $username, $password, array());
$created_image_id = $models->execute_kw($db, $uid, $password,'ir.attachment','create',
                                        array(
                                            array(
                                                    'name'=>'test.png',
                                                    'datas'=> $b64image,
                                                    'datas_fname'=> 'test.png',
                                                    'res_model'=> 'res.partner',
                                                    'type'=> 'binary'
                                                )
                                            )
                                        );
echo $created_image_id;

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
2
7月 20
27714
1
6月 23
3288
5
5月 23
15272
2
12月 23
5233
1
5月 22
2476