2017-09-20 4 views
0

のDjango == 1.11.5Djangoの管理:既存の "1"

から新しい "多くの" オブジェクトの多対1の関係と創造私は2つのモデルがあります:

class Sheet(models.Model): 
    canonical_image = models.ForeignKey('images.Image', 
            blank=True, 
            null=True, 
            on_delete=models.PROTECT, 
            related_name="%(app_label)s_%(class)s_related", 
            verbose_name=_("canonical image")) 


class Image(models.Model): 

    sheet = models.ForeignKey(Sheet, 
           on_delete=models.PROTECT, 
           verbose_name=_("sheet")) 
    pass 

をI Django adminのモデルを登録しました。

私はadminでシートを変更すると、 "Canonical image"と画像を追加するプラスボタンが表示されます。

プラスボタンを押すと、新しい画像を作成するフォームが表示されます。 そして、選択肢シート付きのドロップダウンリストがあります。そこにはたくさんのシートがあります。

これは不器用です。私は明確なシートからプラス記号を押します。新しい画像を作成するには、そのシートを選択する必要があります。

この問題に対処する方法を教えてください。たぶんその選択肢をその特定のシートに限定すること。または、イメージ作成フォームからシートを削除し、input type = "hidden"に置き換えます。

またはその他のもの。より簡単に良い。

答えて

1

これはコメントでなければなりませんが、十分なポイントがありません。

しかし、ModelAdminの作成を検討しましたか? ModelAdminクラスで Django doc

、あなたもにそのあなたの現在のモデルのリンクをあなたにModelAdminを添付したモデルへのリンクのいずれか、他のモデルのためのインラインを追加したり、モデルをすることができます。

+0

インラインではないと思いますか?説明されている問題は、クリックしてシートの新しい「canonical_image」を作成するときです。 –

+0

あなたは正しいかもしれませんが、プロジェクトの状態と正確に必要なものについてより具体的な質問が必要です。 – Shawnse

+1

ショーンズ、キックのためにありがとう。私はインラインで運賃がありません。私はチュートリアルの例を見つけました。それが役に立てば幸い。 – Michael