得る
API
http:IP:PORT/{
{version}}/model_name
クエリは指定されたフィールドを返します
積極的な選挙
レコードセットはID、名前のデータを返します。
http:IP:PORT/{
{version}}/model_name?query={id,name}
逆選挙
レコードセットは名前以外のデータを返します
http:IP:PORT/{
{version}}/model_name?query={-name}
インラインリターン
http:IP:PORT/{
{version}}/model_name?query={id,name,manager{name},dad{id,name}}
返されたデータをフィルタリングするためのフィルタ
ドメイン形式で返されたデータをフィルターするには、前に書いたドメイン構文の概要を確認してください。
単一条件
http:IP:PORT/{
{version}}/model_name?filter=[["kind", "=", "manpower"]]
多条件
http:IP:PORT/{
{version}}/model_name?filter=["|",["status", "=", "OK"],["status", "=", "READY"]]
& 共同クエリ
使用して接続する
http:IP:PORT/{
{version}}/model_name?query={id, name}&filter=[["id", ">", 60], ["id", "<", 70]]
ページネーション
page_size (オプション) & page (オプション)
http:IP:PORT/{
{version}}/model_name?query={id, name}&page_size=5&page=3
注: prev、current、next、total_pages は、それぞれ前のページ、現在のページ、次のページ、合計ページを表示します。
限界
返されるデータの数を制限する
http:IP:PORT/{
{version}}/model_name?query={id, name}&limit=3
役職
体
インターフェースフォーム
データ
{
"params": {
"data": {
"name": "技术部",
}
}
}
メニーツーワン
Many2one フィールドはテーブルの ID に直接関連付けられています。
{
"params": {
"data": {
"name": "技术部",
"dad":1 // dad是Many2one字段
}
}
}
ワンツーメニー
1) 新規作成
(0, 0,{ 値 }) 値の情報に基づいて新しいレコードを作成します
BODY でドメイン表現を使用する
(0, 0, { 値 })は [0, 0, {"consumable": "0.3", "engineer_u_res": 1,}] と表現されます。
{
"params": {
"data": {
"name": "清理现场9",
"res_consume":[
[0, 0,{
"consumable": "0.3",
"engineer_u_res":1,
}],
], // res_consume是One2many字段
}
}
}
2) アップデート
(1,ID,{values}) id=IDでレコードを更新(id=IDに対してwriteを実行し、valuesにデータを書き込む)
3) 削除
(2,ID) id=ID のデータを削除します (unlink メソッドを呼び出してデータとマスター/スレーブ データ リンク関係全体を削除します)
たくさんの2たくさん
1) 新しいレコードを作成する
(0,0,{values}) 値の情報に基づいて新しいレコードを作成します
2) 記録を更新する
(1,ID,{values}) id=IDでレコードを更新(valuesにデータを書き込む)
3) データとリンク関係を削除します
(2,ID) id=ID のデータを削除します (unlink メソッドを呼び出してデータとマスター/スレーブ データ リンク関係全体を削除します)
4) データを削除せずに、このレコードのリンク関係を削除します。
(3,ID) 主従データのリンク関係を切断しますが、このデータは削除しません
5) このレコードの新しいマスター/スレーブ リンク関係を作成します。
(4,ID) id=IDのデータに主従リンク関係を追加します。
6) 全レコードのデータリンク関係を削除
(5) スレーブデータの全てのリンク関係を削除するには、全てのスレーブデータに対して(3,ID)を呼び出します。
7) 全レコードのデータリンク関係を削除し、新たに主従リンク関係を作成します。
(6,0,[IDs]) 元のレコードを ID のレコードに置き換えます (つまり、最初に (5) を実行し、次にループ ID を実行して (4,ID) を実行します)。
例:[(6, 0, [8, 5, 6, 4])] 设置 many2many to ids [8, 5, 6, 4]
コンテクスト
コンテキストを渡す
{
"params": {
"context": {
"context_1": "context_1_value",
"context_2": "context_2_value",
....
},
"data": {
"field_1": "field_1_value",
"field_2": "field_2_value",
....
}
}
}
API
http:IP:PORT/{
{version}}/model_name
置く
書き込み方法はPOSTと同じです
体
データ
PUTのデータ書き込み方法はPOSTと同じです。
フィルター
データをフィルタリングする
{
"params": {
"filter": [["id", "=", 95]],
"data": {
"name": "Test product"
}
}
}
コンテクスト
コンテキストは、レコードの更新に関連するコンテキストを渡すために使用されます。
{
"params": {
"context": {
"context_1": "context_1_value",
"context_2": "context_2_value",
....
},
"filter": [["id", "=", 95]],
"data": {
"field_1": "field_1_value",
"field_2": "field_2_value",
....
}
}
}
手術
これは、1 対多フィールドと多対多フィールドでのみ機能します。
概念としては、one2many または many2many フィールドのすべてのレコードを置換したくない場合があり、代わりに他のレコードを追加したり、一部のレコードを削除したりすることがあり、そこに操作を配置するということです。
基本的に、プッシュ、ポップ、削除の 3 つの PUT 操作があります。
- Push は、既存のリンク レコードに他のレコードを追加/追加するために使用されます。
- Pop は、更新中のレコードから特定のレコードを削除/リンク解除するために使用されますが、システム上では削除されません。
- delete は、レコードを削除/リンク解除し、完全に削除するために使用されます。
{
"params": {
"filter": [["id", "=", 95]],
"data": {
"related_product_ids": {
"push": [102, 30],
"pop": [45],
"delete": [55]
}
}
}
}
API
http:IP:PORT/{
{version}}/model_name
消去
API
http:IP:PORT/{
{version}}/model_name/<int:id>
フィルター
http:IP:PORT/{
{version}}/model_name?filter=[["id", "=", 95]]