Как разместить модель с ключом foeign

У меня есть такая модель

один имеет внешний ключ другого.

class MyCategory(models.Model):
    name = models.CharField(max_length=30)
    description = models.TextField(verbose_name='description')

class MyItem(models.Model):
    file = models.FileField(upload_to='uploaded/')
    category = models.ForeignKey(MyCategory, on_delete=models.CASCADE)
    @property
    def category_name(self):
        return self.category.name

Теперь я хочу загрузить файл в MyItem и одновременно установить категорию.

Сначала я попробовал следующее. (У меня есть данные одной категории, которая имеет id = 1)

curl -X POST -F file=@mypng.jpg -F 'category=1' http://localhost/items/

показывает Exception Value: (1048, my_category_id cannot be null)

category=1 не принимается как внешний ключ.

SO,,, можно ли использовать команду curl для установки ForeignKey?

Вы установили category=1, поэтому Django ожидает отправки объекта category, но если вам нужно отправить id объекта, установите category_id=1

curl -X POST -F file=@mypng.jpg -F 'category_id=1' http://localhost/items/
Вернуться на верх