Makemigrations Django TypeError отсутствует 1 обязательный позиционный аргумент: 'on_delete' - PullRequest
0 голосов
/ 01 сентября 2018

Когда я запускаю makemigrations в django, я получаю ошибку:

TypeError: init () отсутствует 1 обязательный позиционный аргумент: 'on_delete'

TypeError: __init__() missing 1 required positional argument

и это мой код:

from django.db import models


class List(models.Model):
name = models.CharField(max_length=50)

def __str__(self):
    return "List:{}".format(self.name)


class Card(models.Model):
    title = models.CharField(max_length=100)
    description = models.TextField(blank=True)
    list = models.ForeignKey(List, related_name="cards")
    story_points = models.IntegerField(null=True, blank=True)
    business_value = models.IntegerField(null=True, blank=True)

    def __str__(self):
        return "Card:{}".format(self.title)

Ответы [ 2 ]

0 голосов
/ 01 сентября 2018

In ForeignKey поле on_delete является обязательным параметром. Таким образом, вы должны определить list с этим

list = models.ForeignKey(List, related_name="cards", on_delete=models.CASCADE)

Отношения многие-к-одному. Требуются два позиционных аргумента: класс, к которому относится модель, и опция on_delete.

0 голосов
/ 01 сентября 2018

сообщение об ошибке указывает на отсутствующий аргумент в поле list модели Card. Попробуйте что-то вроде list = models.ForeignKey(List, related_name="cards", on_delete=models.CASCADE)

...