2

ユーザーがアップロード セクションに何も入力しない場合、デフォルトのアップロードを行う SQLFORM を作成しようとしています。static/images ディレクトリにファイル (.png 画像) を保存しました。ユーザーが実際にファイルを送信すると、ファイルは正しく取得されますが、私のデフォルトは機能しません。私がしようとしているデフォルトを作るために

form.vars.image_thumbnail = db.myTable.image_thumbnail.store(open(os.path.join(request.folder, 'static', 'images','defaultUpload.png'),'rb')))

これは、テーブルにこのデフォルトの画像が必要な場合に私が行うことと似ています。これを行う良い方法はありますか。

簡単な説明: アップロード フィールドを持つテーブルがあります。ページに SQLFORM を配置して、新しいエントリを挿入したいと考えています。また、ユーザーがアップロード セクションを空白のままにして、静的フォルダーにあるファイルを入力したことをそのフォームに認識させたいと考えています。SQLFORM でこれを行うことはできますか?

4

2 に答える 2

1

これはうまくいくはずです:

import os
db.myTable.image_thumbnail.default = os.path.join(request.folder, 'static', 'images', 'defaultUpload.png')

ユーザーがファイルをアップロードしない場合、デフォルト ファイルのコピーが保存されます。更新も処理します。ユーザーが既存のファイルを削除すると、デフォルト ファイルのコピーが保存されます。

于 2013-07-19T15:01:31.620 に答える