Сохранить значения флажков из CSV Django - PullRequest
0 голосов
/ 01 октября 2019

У меня есть файл CSV в этом формате CSV file image

Я могу получить данные в этом поле динамически. Как я могу сохранить эти данные в базе данных, чтобы их можно было легко отобразить в виде флажков. И сохранить данные в модель, используя этот CSV.

Моя модель похожа на эту

restaurant = models.OneToOneField(User, on_delete=models.CASCADE)
    ArticleName = models.CharField(max_length=50, null=False, blank=False)
    price = models.DecimalField(max_digits=10, decimal_places=2)
    Category = models.CharField(max_length=50, null=False, blank=False)
    Pickuptax = models.FloatField(null=True, blank=True, default=None)
    Ingredient = models.CharField(max_length=100)   //As I can't assign static choice fields here.

1 Ответ

1 голос
/ 01 октября 2019

Вы можете использовать модель для ингредиента и ManyToManyField

Создать модель ингредиента следующим образом:

class Ingredient(models.Model):
    name = CharField(max_length=255, unique=True)

Затем измените поле ингредиента на:

Ingredients = models.ManyToManyField(Ingredient)

Затем вы можете добавить ингредиенты в статью следующим образом:

def add_ingredient(article, name):
    ingredient = Ingredient.objects.get_or_create(name=name)
    article.Ingredients.add(ingredient)
    article.save()

Кстати, вы не должны использовать прописные имена для переменных-членов, поэтому вместо ArticleName используйте article_name. Имена в верхнем регистре только для классов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...