Я пытаюсь запустить одноразовую команду управления для предварительного заполнения базы данных.
Вот модель:
class ZipCode(models.Model):
zip_code = models.CharField(max_length=7)
latitude = models.DecimalField(decimal_places=6, max_digits =12)
longitude = models.DecimalField(decimal_places=6, max_digits =12)
а вот команда управления:
from django.core.management.base import BaseCommand
from core.models import ZipCode
class Command(BaseCommand):
def populate_db(self):
zip_code_object = ZipCode(zip_code='10566', latitude = 10.2, longitude= 43.4) #test data to see if I could get it working
ZipCode.save(self)
def handle(self, *args, **options):
self.populate_db()
Но когда я запускаю python3.6 manage.py populate_zip_code_db
, он возвращается
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/django/db/models/base.py", line 741, in save
for field in self._meta.concrete_fields:
AttributeError: 'Command' object has no attribute '_meta'
Кто-нибудь знает, как заставить это работать? Я только что обнаружил команды управления, поэтому я ничего не знаю.