Я новичок в Django и создаю приложение для викторины.Я хочу иметь возможность импортировать некоторые вопросы из CSV-файла в Django, используя метод import_export.admin на сайте администратора. Когда я пытаюсь импортировать, содержимое моего CSV-файла, который содержит список вопросов, не добавляется к моим существующимвместо этого в списке вопросов выдается ошибка «Недопустимый литерал для int () с основанием 10:« Независимость ».»
Я попытался изменить формат файла CSV, который я загружаю из значений, разделенных запятымив CSV UTF-8 (через запятую).Я также попытался использовать целые числа в столбце «Категория», но он выдает ошибку «Трассировка (последний вызов был последним). Запрос на соответствие категории не существует».Любая помощь?
мой файл admin.py:
class QuizAdmin(admin.ModelAdmin):
form = QuizAdminForm
list_display = ('title', 'category', )
list_filter = ('category',)
search_fields = ('description', 'category', )
class CategoryAdmin(admin.ModelAdmin):
search_fields = ('category', )
class MCQuestionAdmin(ImportExportModelAdmin):
list_display = ('content', 'category', )
list_filter = ('category',)
fields = ('content', 'category',
'figure', 'quiz', 'explanation', 'answer_order')
search_fields = ('content', 'explanation')
filter_horizontal = ('quiz',)
inlines = [AnswerInline]
мой файл models.py:
class CategoryManager(models.Manager):
def new_category(self, category):
new_category = self.create(category=re.sub('\s+', '-', category).lower())
new_category.save()
return new_category
class Category(models.Model):
category = models.CharField(verbose_name=_("Category"),
max_length=250, blank=True,
unique=True, null=True)
objects = CategoryManager()
class Meta:
verbose_name = _("Category")
verbose_name_plural = _("Categories")
def __str__(self):
return self.category
class Question(models.Model):
"""
Base class for all question types.
Shared properties placed here.
"""
quiz = models.ManyToManyField(Quiz,
verbose_name=_("Quiz"),
blank=True)
category = models.ForeignKey(Category,
verbose_name=_("Category"),
blank=True,
null=True, on_delete=models.CASCADE)
figure = models.ImageField(upload_to='uploads/%Y/%m/%d',
blank=True,
null=True,
verbose_name=_("Figure"))
content = models.CharField(max_length=1000,
blank=False,
help_text=_("Enter the question text that "
"you want displayed"),
verbose_name=_('Question'))
explanation = models.TextField(max_length=2000,
blank=True,
help_text=_("Explanation to be shown "
"after the question has "
"been answered."),
verbose_name=_('Explanation'))
objects = InheritanceManager()
class Meta:
verbose_name = _("Question")
verbose_name_plural = _("Questions")
ordering = ['category']
def __str__(self):
return self.content
def create_new_question(data):
questions = Question.objects.create_new_question(quiz=data['quiz'],
category=data['category'],
content=data['content'],
explanation=data['explanation'])
questions.save()
Когда я загружаю файл, я получаю сообщение об ошибке:
Недопустимый литерал для int () с основанием 10: «Независимость»