2011-09-15 13 views
7

を閲覧するウィジェットを必要とする:私は、以下の「RecordEntry」モデルとシンプル掲載ページアプリを持っているファイルシステムに

class RecordEntry(models.Model): 
    client = models.ForeignKey(PostPage) 
    filename = models.CharField(max_length=64, unique=False, blank=True, null=True) 
    descriptor = models.CharField(max_length=64, unique=False, blank=True, null=True) 
    date = models.DateField(_("Date"), default=datetime.date.today) 
    post_type = models.CharField(max_length=50, choices=POST_CHOICES) 
    round = models.CharField(max_length=50, choices=ROUND_CHOICES) 
    pdf = models.CharField(max_length=100, unique=False, blank=True, null=True) 
    html = models.CharField(max_length=100, unique=False, blank=True, null=True) 
    zip = models.CharField(max_length=100, unique=False, blank=True, null=True) 
    psd = models.CharField(max_length=100, unique=False, blank=True, null=True) 

    def __unicode__ (self): 
      return return u'%s %s' % (self.client, self.filename) 

    class Admin: 
      pass 

PDF、HTML、郵便番号、およびPSDフィールドがどのこれらのオブジェクトへのパスを開催しますテンプレートによるリンクとして表示されます。私の質問は、毎回これらのフィールドにパス全体を実際に入力するのを避ける方法があるかどうかです。私がファイルシステムを閲覧し、クリックしたアイテムのパスをキャプチャできるようなタイプのウィジェットはありますか?

+0

なぜFileFieldを使用しないのですか? https://docs.djangoproject.com/en/1.3/ref/models/fields/#filefield – Brandon

+0

私は誤っているかもしれませんが、私はFileFieldが実際に設定で指定されたメディアディレクトリにファイルをアップロードしたと考えました。私はちょうどサーバー上に既に存在するファイルへのパスを参照したい。 FileFieldは私にそれを(私は今それを勉強している)行うことができるかもしれませんが、私はそれができないと仮定しました。 – kjarsenal

+0

はい、アップロード処理も行います。ディレクトリを閲覧するには、FilePathFieldを試してください:https://docs.djangoproject.com/en/1.3/ref/models/fields/#filepathfield – Brandon

答えて

1

これはどこにでもありますか?

Is there a filesystem plugin available for django?

あり、ここでどのように-へのビットです:

http://rfc1437.de/page/writing-a-simple-filesystem-browser-with-django/

はいますが、自分でウィジェット選択にそれを作る必要があるだろう。

+2

Filebrowser/Grapelliは私が必要以上に道です。私は、WYSIWYGプログラムのようなウィジェットが必要です。ディレクトリウィンドウを開くボタン。ターゲットファイルに移動してをクリックすると、パスがコードに反映されます。明らかに、それは私が思った以上にコードに関わっています。 – kjarsenal

関連する問題