簡體   English   中英

嘗試遵循 Django Girls 教程時出現“ImportError:沒有名為 admin 的模塊”

[英]'ImportError: no module named admin' when trying to follow the Django Girls tutorial

我目前正在做 Django Girls 教程,我遇到了一個障礙,我無法python manage.py migrate ,因為 bash 抱怨沒有任何名為 admin.admin 的模塊我能做些什么? 我已經按照教程所說的做了一切。 我正在通過 pythonanywhere.com 運行 bash,這是錯誤消息:

    Traceback (most recent call last):                                          
  File "manage.py", line 10, in <module>                                    
    execute_from_command_line(sys.argv)                                     
  File "/home/wost/my-new-blog/myvenv/local/lib/python2.7/site-packages/djan
go/core/management/__init__.py", line 353, in execute_from_command_line     
    utility.execute()                                                       
  File "/home/wost/my-new-blog/myvenv/local/lib/python2.7/site-packages/djan
go/core/management/__init__.py", line 327, in execute                       
    django.setup()                                                          
  File "/home/wost/my-new-blog/myvenv/local/lib/python2.7/site-packages/djan
go/__init__.py", line 18, in setup                                          
    apps.populate(settings.INSTALLED_APPS)                                  
  File "/home/wost/my-new-blog/myvenv/local/lib/python2.7/site-packages/djan
go/apps/registry.py", line 85, in populate                                  
    app_config = AppConfig.create(entry)                                    
  File "/home/wost/my-new-blog/myvenv/local/lib/python2.7/site-packages/djan
go/apps/config.py", line 123, in create                                     
    import_module(entry)                                                    
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)                                                        
ImportError: No module named admin 

我懷疑你在INSTALLED_APPS有以下內容:

INSTALLED_APPS = [
    # ...
    "admin",
    # ...
]

我認為你的意思是使用django.contrib.admin

INSTALLED_APPS = [
    # ...
    "django.contrib.admin",
    # ...
]

似乎沒有像admin這樣的模型,你仍然試圖導入它。 發布你的settings.py 正如我猜你可能在INSTALLED_APP添加了admin一樣

INSTALLED_APPS = [
    'django.contrib.admin',
    'admin',
     .......
]

如果是,那么刪除該admin並明確表示你沒有在整個項目中創建任何應用程序

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
]

我想到的第二件事是你可能沒有激活項目的虛擬環境。 有時,這會導致像這樣的問題。 而對於剛剛更改prompt到您的manage.py所在,只是打..\\Scripts\\activate (Windows)或../Scripts/activate (類似Unix的操作系統)。

我被困在同一件事上; 問題是urls.py中的聲明:

path('admin/', include('admin.site.urls'))

相反,正確的是

path('admin/', admin.site.urls)

希望這可以幫助!

我遇到了同樣的問題,事實證明問題是我在錯誤的虛擬環境和錯誤的路徑文件中。 確認這一點,它可能會為您節省大量調試和更改最初工作的代碼的工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM