私はodoo9で働いています。次に、ユーザーがパートナーを選択して販売履歴を取得できるようにするビューが必要でした。
モデル「sale.history」を作成しましたが、選択したデータをレコードとして db に保存します。私は本当にこれを必要としません。
このためのビューを作成するにはどうすればよいですか。
私はodoo9で働いています。次に、ユーザーがパートナーを選択して販売履歴を取得できるようにするビューが必要でした。
モデル「sale.history」を作成しましたが、選択したデータをレコードとして db に保存します。私は本当にこれを必要としません。
このためのビューを作成するにはどうすればよいですか。
このようなビュー/レポートには 2 つのオプションがあります。
モデル継承のTransientModel
代わりに使用します。Model
データベース内の一時的なモデル レコードは、頻繁に実行される cron ジョブによって削除されます。電子メール メッセージの PopUp/Wizard はその良い例です。
販売注文の独自のレポート (データベース ビュー) を作成します。実際には、そのためのレポートが既に 1 つあります。Reporting/Sales/Sales Analysis です。そのレポートのモデルは、sale.report
それがどのように行われたかを知りたい場合です。
モデルのフィールドで store=False を使用できます (danidee が提案したように)。
モデルの create メソッドを上書きすることもできます。
質問 - 「sale.history」モデルの目的は何ですか? データがまったく保存されない場合は、新しいモデルを作成するよりも、「res.partner」に対して新しいビューを作成する方がよい場合があります。
TransientModel
(古いAPI)または(新しいAPI)を使用する以外にAbstractModel
...store
フィールドのプロパティをfalseに設定するだけで、フィールドがデータベースに永続化されず、単に「ビューフィールド」になります。
class sale_history(model.Model):
_name='sale.history'
partner = fields.Many2one('res.partner', store=False)
パートナー フィールドがデータベースに保存されることはありません