Helpers - компьютеры, интернет, программирование

Django, я получаю ОШИБКА: модуль: модели не могут быть импортированы во время проверки manage.py или sync.db

После добавления приложения в раздел INSTALLED_APPS не могу сделать python manage.py check - возвращает ошибку. Не могли бы вы помочь мне разобраться, что я делаю не так?

1) окно консоли с ошибкой @ line55 в models.py

текст консоли:

(py350-dja185-venv) MacBook-Pro: recipepython manage.py check1 mac1 $ python manage.py проверить оболочку Traceback (последний вызов последним): файл manage.py, строка 10, в файле execute_from_command_line (sys.argv) / Users / mac1 / Envs / py350-dja185-venv / lib / python3.5 / site-packages / django / core / management / init .py ", строка 351, в файле execute_from_command_line utility.execute ()" /Users/mac1/Envs/py350-dja185-venv/lib/python3.5/site-packages/django/core/management/<▪init .py ", строка 325, при выполнении django.setup ( ) Файл "/Users/mac1/Envs/py350-dja185-venv/lib/python3.5/site-packages/django/ init .py", строка 18, в setup apps.populate (settings .INSTALLED_APPS) Файл "/Users/mac1/Envs/py350-dja185-venv/lib/python3.5/site-packages/django/apps/registry.py", строка 108, в файле заполнения app_config.import_models (all_models) /Users/mac1/Envs/py350-dja185-venv/lib/python3.5/site-packages/django/apps/config.py ", строка 198, в import_models self.models_module = import_module (models_module_name) File "/Users/mac1/Envs/py350-dja185-venv/lib/python3.5/importlib/ init .py", строка 126, в import_module return _bootstrap ._gcd_import (имя [уровень:], пакет, уровень) Файл "", строка 986, в _gcd_import File "", строка 969, в _find_and_load File "", строка 958, в _find_and_load_unlocked File "", строка 673, в _load_unlocked < br> Файл "", строка 662, в файле exec_module "", строка 222, в файле _call_with_frames_removed "/Users/mac1/Documents/workspace/recipepython manage.py check1/meals/models.py", строка 55, в классе Ingredients (models.Model ): Файл "/Users/mac1/Envs/py350-dja185-venv/lib/python3.5/site-packages/django/db/models/base.py", строка 308, в новом new_class._prepare () Файл "/Users/mac1/Envs/py350-dja185-venv/lib/python3.5/site-packages/django/db/models/base.py", строка 361, в _prepare cls. doc = "% s (% s)"% (cls. name, "," .join (f.nam e вместо f в opts.fields)) TypeError: элемент последовательности 7: ожидаемый экземпляр str, найдено int

2) кусок кода @ models.py Почему выдает ошибку в строке 55?

36-39 MEASUREMENT_CHOICES = (('шт', 'штук'), ...,)

41 class Recipe(models.Model):
42     recipe_id = models.PositiveIntegerField()
43     meal_id = models.ForeignKey('Meal')
44     ingredient_id = models.ForeignKey('Ingredients', related_name = '+')
45     ingr_quantity = models.PositiveSmallIntegerField()
46     ingr_measurement = models.CharField(max_length = 5, choices = MEASUREMENT_CHOICES)
47     tail = models.CharField(max_length = 35) 

49 SEASON_CHOICES = ((u'01', u'январь'), (u'02', u'февраль'), (u'03', u'март'),
                  (u'04', u'апрель'), (u'05', u'май'), (u'06', u'июнь'),
                  (u'07', u'июль'), (u'08', u'август'), (u'09', u'сентябрь'),
                  (u'10', u'октябрь'), (u'11', u'ноябрь'), (u'12', u'декабрь'),  
                  )

55 class Ingredients(models.Model):
56    ingr_name = models.CharField(max_length = 20)
57    ingr_category = models.ForeignKey('IngrCategory') 
58    calories_raw = models.PositiveSmallIntegerField()
59    calories_boiled = models.PositiveSmallIntegerField()
60    calories_fried = models.PositiveSmallIntegerField()
61    ingr_unit = models.CharField(10)
62    price_in_season = models.DecimalField(7,2)
63    price_in_no_season = models.DecimalField(7,2)
64    price_current = models.DecimalField(7,2)
65    season = models.CharField(max_length = 2, choices = SEASON_CHOICES)

Каким-то образом он проходит через класс Recipe, а также через предыдущий класс и дает мне ошибку в строке class Ingredients(models.Model). Почему?

3) окно затмения - тот же проект, разные типы ошибок:

Поиск файлов ... готово. Импорт тестовых модулей ... готово. Отслеживание (последний вызов последним): ‹...> File" /Applications/Eclipse.app/Contents/Eclipse/plugins/org.python.pydev_4.3.0.201508182223/pysrc/pydev_runfiles.py ", строка 813, в run_tests Raise AssertionError («Невозможно запустить набор с DjangoTestSuiteRunner, потому что он не может быть импортирован.») AssertionError: Невозможно запустить набор с DjangoTestSuiteRunner, потому что он не может быть импортирован.

Большое вам спасибо за вашу помощь.

27.11.2015

  • Здесь показан полный Ingredients код класса? 27.11.2015
  • В следующий раз, пожалуйста, вставьте контекст консоли как текст в вопрос, а не картинку, вставленную где-то в пустоте. 27.11.2015
  • Какое значение MEASUREMENT_CHOICES? 27.11.2015
  • Михал Ф, нет, класс ингредиентов здесь не показан полностью. trinchet, MEASUREMENT_CHOICES пишется на русском языке, тип - строка, максимум 5 символов. 27.11.2015

Ответы:


1

Проблема заключалась в отсутствии max_digits = и decimal_places =.

62    price_in_season = models.DecimalField(max_digits = 7, decimal_places = 2)

Это поле представляет собой номер 7 последовательности в классе Ingredients.

27.11.2015
Новые материалы

Интуитивное понимание тензоров в машинном обучении
Тензор является важной концепцией во многих научных областях, таких как математика, физика, обработка сигналов и компьютерное зрение, и это лишь некоторые из них. В математике тензор — это..

Использование машинного обучения для диагностики болезни Альцгеймера, часть 4
Маркеры семантической согласованности для ранней диагностики болезни Альцгеймера (arXiv) Автор: Давиде Колла , Маттео Дельсанто , Марко Агосто , Бенедетто Витиелло , Даниэле Паоло Радичони..

Почему объяснимость так важна прямо сейчас?
По мере того, как системы искусственного интеллекта и инструменты на основе машинного обучения распространяются в нашей повседневной жизни, как практики, так и критики все чаще заявляют о..

Анимированный математический анализ
Использование Manim для создания математических анимированных визуализаций Визуализация данных помогает понять скрытые закономерности в данных, которые невозможно визуализировать..

Создание простого слайдера изображений с помощью JavaScript
Узнайте, как создать базовый слайдер изображений с помощью HTML, CSS и JavaScript. Введение В этом уроке мы создадим удобный слайдер изображений, используя JavaScript, HTML и CSS. Ползунок..

Создание базы данных с помощью супергероя «Python»
В этом посте мы узнаем, как создать «базу данных SQLite с помощью модуля python sqlite3, создав простую функцию входа и регистрации. Готовы ли вы к этому путешествию? Если да , давайте приступим..

ИИ для чайников: руководство для начинающих по пониманию будущего технологий
Вы чувствуете, что остались позади в мире ИИ? Не волнуйтесь, вы не одиноки! Со всей этой шумихой вокруг искусственного интеллекта может быть трудно понять, с чего начать. Но не позволяйте сленгу..