MongoEngine ile Flask-Admin kullanarak basit bir çözüm bulamadığım bir sorunum var. ExerciseResourceContent
adında bir Belge sınıfım var. için iki sınıfta sınıflandırma yapılabilir MongoEngine'in DynamicEmbeddedDocument'i Flask-Admin'te İşleniyor
class ExerciseQuestion(db.DynamicEmbeddedDocument):
"""
Generic collection, every question type will inherit from this.
Subclasses should override method "without_correct_answer" in order to define the version sent to clients.
Subclasses of questions depending on presentation parameters should also override method "with_computed_correct_answer".
"""
_id = db.ObjectIdField(default=ObjectId)
## Question text
question_text = db.StringField(required=True)
## Correct answer (field type depends on question type)
correct_answer = db.DynamicField()
(daha:
class ExerciseResourceContent(ResourceContent):
"""An exercise with a list of questions."""
## Embedded list of questions
questions = db.ListField(db.EmbeddedDocumentField(ExerciseQuestion))
ExerciseQuestion
belge aslında bir DynamicEmbeddedDocument
geçerli: O denilen EmbeddedDocument
bir ListField
ExerciseQuestion
bir "soru" niteliğine sahiptir gel): MultipleAnswerMCQExerciseQuestion ve UniqueAnswerMCQExerciseQuestion:
class MultipleAnswerMCQExerciseQuestion(ExerciseQuestion):
"""Multiple choice question with several possible answers."""
## Propositions
propositions = db.ListField(db.EmbeddedDocumentField(MultipleAnswerMCQExerciseQuestionProposition))
## Correct answer
correct_answer = db.ListField(db.ObjectIdField())
class UniqueAnswerMCQExerciseQuestion(ExerciseQuestion):
"""Multiple choice question with one possible answer only."""
## Propositions
propositions = db.ListField(db.EmbeddedDocumentField(UniqueAnswerMCQExerciseQuestionProposition))
## Correct answer
correct_answer = db.ObjectIdField()
Flask-Admin'i bir ExerciseResourceContent
oluşturmak veya düzenlemek için kullandığımda, bir "Soru" metnini düzenleyebileceğim bir "Soru" listesi görüntüler, ancak "Correct_Answer" özniteliğini veya "önermeler" özniteliğini göremiyorum. bende olduğu gibi. Flask-Admin doktora ile uğraştım, ama bu dinamik şeyler (alanlar ya da belgeler) ile ilgili bir sorun gibi görünüyor ve bu dokümanlar hakkında bir şey yok. Yardımlarınız için
Teşekkür
bu kod may ederken ... i belgelere geçmesi gerektiğini düşünüyorum
Neyse admin alt sınıfını kayıt ... ya da çok uzun burada bekleyen sona erebilir soruyu cevaplayarak, neden ve/veya bu kodun soruyu nasıl cevapladığıyla ilgili ek bağlam sağlayarak uzun vadeli değerini artırır. –