這裏有很多類似的問題,但它們似乎都是針對舊版本的,或者與錯字有關。Django 1.9教程第2部分:運行python manage.py makemigrations polls時沒有名爲'polls.apps'的模塊
在part 2 of the Django 1.9 tutorial,我停留在對投票程序的初始遷移:
python manage.py makemigrations polls
運行此,我得到的錯誤:`導入錯誤:沒有模塊名爲「polls.apps」
我使用Python 3.5.1
和Django 1.9.4
摘自mysite/settings.py
...
INSTALLED_APPS = [
'polls.apps.PollsConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
...
文件夾結構:
.
├── db.sqlite3
├── manage.py
├── mysite
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── __pycache__
│ ├── settings.py
│ ├── settings.pyc
│ ├── urls.py
│ └── wsgi.py
└── polls
├── __init__.py
├── __pycache__
├── admin.py
├── models.py
├── tests.py
├── urls.py
└── views.py
4 directories, 21 files
你是對的,我不知道爲什麼那個文件不存在,但是擦除'polls'文件夾並重新運行'python manage.py startapp polls'解決了這個問題。 **編輯**所有提到都是正確的 - 發生了什麼是,我在另一個終端選項卡中運行的命令不是在正確的virtualenv(在Python 2上,可能是Django的舊版本),令人驚訝的是,它運行無誤。 – waffl
也許你以前在運行'startapp'時使用了不同版本的Django。當你運行'python manage.py startapp'時,Django 1.8和更早的版本不會創建'apps.py'。 – Alasdair
@Alasdair但在這種情況下,我懷疑應該有'migrations'包創建,對吧?謝謝。 – alecxe