odooでモデルを作成してデータベースレベルに反映できないのですか?例えばビューレベルでodooモデルを作成
:私は、データベースに "sale_order" テーブルを作成したくない
class SalaOrder(model.models):
_name='sale.order'
。
odooでモデルを作成してデータベースレベルに反映できないのですか?例えばビューレベルでodooモデルを作成
:私は、データベースに "sale_order" テーブルを作成したくない
class SalaOrder(model.models):
_name='sale.order'
。
models.py
(odoo/odoo/models.py)に関するコメントによれば、_auto
をFalse
に設定することができます。
Odooモデルが作成されます。コメントに
class SalaOrder(model.models): _name = 'sale.order' _auto = False
はここ
_auto = False # don't create any database backend
が(同じコードから)Odooモデルに関するいくつかの詳細をしていると言います
:クラス:
Model
通常のデータベース用-persistedモデル:クラス:一時的なデータのための
TransientModel
、データベースに保存されているが、 が自動的にしょっちゅう真空: 複数の継承モデル
で共有されることを意味し、抽象スーパークラスのAbstractModel
:クラス
システムは、データベースごとにすべてのモデルを自動的にインスタンス化します。これらの インスタンスは、各データベース上で使用可能なモデルを表し、 に依存し、そのモジュールはそのデータベースにインストールされています。それぞれの インスタンスの実際のクラスは、対応するモデル から作成および継承するPythonクラスから作成されます。
すべてのモデルインスタンスは、「レコードセット」、すなわちモデルの レコードの順序付けられたコレクションです。レコードセットは、 :meth:~.browse
、:meth:~.search
、またはフィールドアクセスのようなメソッドによって返されます。レコードには 明示的な表現がありません。レコードは、1つの レコードのレコードセットとして表されます。
インスタンス化すべきでないクラスを作成するには、_registerクラス 属性をFalseに設定します。
ありがとう@Lucasその仕事 –
「反映する」という意味は少し不明です。これは、odooによって自動的にテーブルを作成したくないということですか、それとも別の名前でテーブルを作成したいのですか? – Unatiel
はい、私はテーブルを作成したくありません。 –