Odoo 9 PostgreSQLデータベースのimage
の列がres_partner
のテーブルに見つかりませんでしたか? Odoo 9はこの画像フィールドをどこに保存しますか?Odoo 9はどこに `res.partner`レコードの` image`フィールドを物理的にデータベースに保存しますか?
答えて
Odoo 9以降、多くのbinary
フィールドがir.attachment
モデル(ir_attachment
テーブル)内に格納されるように変更されました。これは、ファイルシステムストレージ(および重複排除プロパティ)の恩恵を受け、データベースの膨大化を避けるために行われました。
の場合と同様に、attachment=True
パラメータのバイナリフィールドで有効になります。
有効な場合、バイナリフィールドのget()
およびset()
メソッドはir.attachment
テーブルのstore and retrieve the valueになります。
name
:バイナリフィールドの名前、例えばあなたがcodeを見れば、あなたは添付ファイルが元のレコードへのリンクを確立するために、次の値を使用していることがわかりますimage
res_field
:バイナリフィールドの名前。image
res_model
:フィールドを含むモデル。res.partner
res_id
:IDバイナリフィールドが属するレコードのtype
へ:
datas
:実際に
'binary'
その場合は、ディスク上に格納されているバイナリフィールドの内容と仮想フィールドimage
の値を持つir.attachment
レコードを取得する場合は、IDが32のres.partner
のIDを使用するには、次のSQLを使用します。
SELECT id, store_fname FROM ir_attachment
WHERE res_model = 'res.partner' AND res_field = 'image' AND res_id = 32;
ir_attachment
エントリは、デフォルトでは、ファイルシステムのストレージを使用するので、store_fname
フィールドの実際の値がabc...
値はSHA-1ハッシュである形'ab/abcdef'
で、あなたのOdooファイルストア内の画像ファイルへのあなたの道を与えるだろうがファイルのこれは、Odooが添付ファイルの重複排除を実装する方法です。同じファイルを持ついくつかの添付ファイルは、ディスク上の同じ一意のファイルにマップされます。
あなたがプログラムでimage
フィールドの値を変更したい場合は
write()
メソッド)を使用することをお勧めします。ここで
参照
- それを使用するres.partnerの
image
フィールドを変換し、添付ファイル - そして9.0 commitとしてバイナリフィールドを格納するための機能が導入されているoriginal 9.0 commitです。
ありがとうございます:)あなたはまたどのテーブルが添付ファイルとres_partnerテーブルにそのデータをリンクするために使用されているか教えてください。 res_partnerイメージの添付ファイルをバインドする関係はどこですか? –
あなたは大歓迎です! 'ir.attachment'のデータと' res.partner'の行をリンクする表は、 'ir_attachment'表そのものです。カラム 'res_model'、' res_field'、 'res_id'は' res_partner'や 'attachment = True'のバイナリフィールドを持つ他のテーブルとの' many2one'関係の並べ替えを作成します。特定のパートナーの添付ファイルを取得するために使用できるSQLクエリの例と、filestore上の実際のイメージファイルを見つけるための説明を追加しました。 – odony
- 1. Subversionは物理的にどこのデータベースを保存しますか?
- 2. 仮想パスの代わりに物理パスをデータベースに保存
- 3. Odoo/Openerpでレコードを保存するときにポップアップを表示
- 4. AltDS - 代替データストリームは物理的にディスクに保存されていますか?
- 5. どのようにCの物理的な場所にspfileを保存する#
- 6. ChromeはSQLiteデータベースをどこに保存しますか?
- 7. データベースのパスワードはどこに保存しますか?
- 8. 新しいレコードをDatagridviewからデータベースに保存します。
- 9. java、doc、pdf、imageファイルをmysqlデータベースに保存するには?
- 10. Hibernateはデータベースにレコードを保存しません
- 11. GACにインストールされたアセンブリは物理的にどこに保管されていますか?
- 12. sitecoreはどこにアイテム統計データをデータベースに保存しますか?
- 13. Google App Engine/Java SDKはレコードとBLOBをどこに保存しますか?
- 14. H2の組み込みデータベースはどこにデータを保存しますか?
- 15. Android:どこにデータを保存しますか?データベースまたはXML?
- 16. geoserverはpostgresqlデータベース接続のパスワードとユーザーをどこに保存しますか?
- 17. Moodle 2.0はどこにファイルを保存しますか?データベースやファイルシステムでは?
- 18. アップロードしたファイルを物理パスにHttpPostedFileBase.SaveAsで保存する
- 19. 静的フィールドにアニメーションを保存する
- 20. データベースにXML構成ファイルをフィールドとして保存するか、そのパスを保存しますか?
- 21. C#例外を処理するときにデータベースに保存するフィールド
- 22. 一般的なhandler.ashxにプロンプト "image name"として保存しますか?
- 23. iCloudはどこに文書をPCに保存しますか?
- 24. データベースに保存する前にレコードを確認する
- 25. SQLデータベースに保存しますか?
- 26. odooの登録フォームから連絡先レコードを作成する9
- 27. レコードをWindowsPhoneに保存するには
- 28. 一度に1000 +レコードをデータベースに保存する
- 29. はodoo 9で記録ルール
- 30. 変数はどこにjinjaに保存しますか?
使用しているOdooのバージョンを指定する価値があります。バージョン9.0で保存場所が変更されました – odony
はい私はOdoo 9.0を使用しています –