フォームを使用してデータベースに保存した、アップロードされたファイルの日付と名前を取得する方法はありますか? 現在、さらに2つのデータベースタプルを作成しname
て、file_nameにdate
このように保存し、日付を使用して保存しています
file_name = request.FILES['file'].name
upload_date = datetime.datetime.now()
2 に答える
stat
モジュール
を使用してファイルのメタデータを読み取った後、日付を取得できます。http://docs.python.org/release/2.5.2/lib/module-stat.html
これは OS 固有ですが、ST_CTIME
探しているものとおおよそのものを提供するはずです。
その名の通り、保存方法からも簡単にとれます。ファイルを格納するカスタム ハンドラを指定し/your/file/path/filename.extension
、ファイル名の文字列を操作するだけです。
これをフラスコのドキュメントで読んでください。Djangoでどこまで適用できるかはわかりませんが、参考までにここに貼り付けます
*ファイルがアプリケーションにアップロードされる前に、クライアントでファイルがどのように命名されたかを知りたい場合は、filename 属性にアクセスできます。ただし、この値は偽造される可能性があるため、決してその値を信頼しないでください。クライアントのファイル名を使用してファイルをサーバーに保存する場合は、Werkzeug が提供する secure_filename() 関数を介して渡します*
ディスクに保存するときは、元のファイルの名前をファイル名の一部として使用できます。アップロードの日付には、おそらくファイルの作成/変更日を使用できます。IMO、データベースに明示的に保存するだけです。