2016-04-27 8 views
0

私はサードパーティーのアプリで働いています - django-quiz。モデルQuiz自体にはフィールドLanguageが含まれていないため、私自身のモデルであるLanguageモデルにOneToOneField(Quiz)を追加しました。このアプリで管理者のサードパーティアプリケーションモデルにフィールドを追加するにはどうすればよいですか?

、あなたはあなたの管理者にQuizesを見ることができますが、私は(私はLanguageタブ内Quizモデルの選択を見ることができます - 私は反対したい)Quizタブ内Languageモデル選択フィールドを見ることができません。それ、どうやったら出来るの?

<class 'SolnguagesApp.admin.QuizAdmin'>: (admin.E105) 'SolnguagesApp.admin.QuizInlineLanguage' must have a 'model' attribute. 
+0

問題だ admin.site.unregister(クイズ) – mohd

+0

、この行を削除:django.contrib.admin.sites.AlreadyRegistered:モデルクイズがすでに登録されている、他の事はQuizInlineLanguageがあまりにも正しくないということです。 –

+2

この回答を確認してください:http://stackoverflow.com/a/35741651/2011147 – Selcuk

答えて

0

モデルを登録する前に登録されていない使用しないでください:EDITED、ERRORが

(これは、サードパーティのアプリだからでしょう)
from quiz.models import Quiz 


class QuizInlineLanguage(admin.StackedInline): 
    fields = Quiz.language 

class QuizAdmin(ModelAdmin): 
    inlines = [QuizInlineLanguage,] 

admin.site.unregister(Quiz) 
admin.site.register(Quiz, QuizAdmin) 

を私はadmin.pyにこのコードを追加しようとしましたが、それはエラーが発生します!

from quiz.models import Quiz 


class QuizInlineLanguage(admin.StackedInline): 
    fields = Quiz.language 

class QuizAdmin(ModelAdmin): 
    inlines = [QuizInlineLanguage,] 

admin.site.register(Quiz, QuizAdmin) 
+0

それは動作していません:django.contrib.admin.sites.AlreadyRegistered:モデルクイズは既に登録されています。そして、私はQuizInlineLanguageも正しくないと思いますが、しかし、私はそれを行う方法を理解することはできません。 –

+0

クイズはこのアプリのものではなく、サードパーティのアプリからのものです。 –

+0

あなたのアプリとthirdpartyアプリの並び順をチェックすると、あなたの設定からinstalled_appsを共有できますか? – mohd