2017-05-23 18 views
-1

djangoとsqliteの新機能です。それはmodeldbに関連する外部キーからinstance.name値を取得することが可能ですか?自分のpdfファイルをmodeldbクラスと同じディレクトリに保存する必要があります。上記の実験から、imはmodelDB.instance/modelDB.instance.nameで何も得られませんでした。Django(Models):外部キーからインスタンスを取得する方法

enter image description here

+0

は、テキストのスクリーンショットを投稿しないでください行うことができます。 –

+0

が記載されています。これを次回はしません... VM上で実行されるコードをコピーすることが難しくなります。 – JefferyLR

答えて

1

移動クラス外部upload機能します。

インスタンスがクラスインスタンスとして参照されます。だから、この

instance.modelDB.name 

citatiions = models.FileField(...., upload_to=upload) #pass your function name here 

のようにあなたが行うことができ、チェックこの回答link

+0

dosentが動作しているようです...私は(自己)は、単に引用クラスを呼び出しますか?それは "documents/pdf/filename"を返す – JefferyLR

+0

私は答えを – Thameem

+0

opps ...更新しました自分自身の問題thats、私はupload_toでパラメータを更新することを忘れています。コードが動作しています。おかげでたくさんの – JefferyLR

1

def upload(instance, file_name): 
    return "documents/" + instance.ModelDB.name + "/pdf/" + filename 
+0

おかげで、あなたのコードは動作しています...私はパラメータをmodels.filefieldに更新するのを忘れました。助けてくれてありがとう。 – JefferyLR

+0

でもアップフォートを使うことができます。 – zaidfazil