2010年1月31日

Python | Django File.save()メソッド

Django | File storage API | Django documentation

Storage.save(name, content)

DjangoのFileクラスに備わっているsave(name, content)メソッドを使ってファイルのコピーを行ったりしてたんだけど、後でコピー元のファイルを削除しようとすると「プロセスはファイルにアクセスできません。別プロセスが使用中です」とエラーになった。

ソースを追ってみると、File.save()メソッドは上記のStorage.save()メソッドを呼び、Storage.save()ではcontent引数のFileオブジェクトはクローズしていないことが分かった。

File.save()メソッドを実行した後は、元ファイルはclose()メソッドを呼んでおかなければいけないということ。

Posted by otsuka : 20:44 | Comment (0) | Trackback (0)
Comment









名前、アドレスを登録しますか?