簡體   English   中英

為什么 django 繼續將我的應用程序命名為以前的名稱?

[英]Why does django continues naming my app as the previous name?

謝謝閱讀。

當我運行“py manage.py makemigrations”時,我收到以下消息:“ModuleNotFoundError: No module named 'transformaTe'”

這是 apps.py 代碼:

from django.apps import AppConfig


class TransformateConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'transformate'

名稱在那里和我的 INSTALLED_APPS 中更新:

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

我還應該在哪里查看更改應用程序的名稱?

這是應用程序的簡化結構:

\my-app
  \transformate
    admin.py
    apps.py
    models.py
    urls.py
    views.py
   \my-app
     asgi.py
     settigs.py
     urls.py
     wsgi.py

所有這一切都發生在我重命名應用程序時,因為我在創建一個名為 transformaTe_myuser 的表時遇到了問題,所以我認為這一切都可能是由大寫字母的使用引起的。

在 Django 中重命名現有應用程序是否有更好的方法? 我按照以下步驟操作,除了遷移部分(因為我刪除了數據庫和遷移文件夾): https://odwyer.software/blog/how-to-rename-an-existing-django-application

謝謝你的幫助。

好吧,事實證明,當您運行 makemigrations 時,您必須檢查項目 urls.py 文件,這是唯一導致我的遷移崩潰的事情。

原始我的應用程序/網址。 文件:

 from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('', include('transformaTe.urls')),
    path('admin/', admin.site.urls),
]

需要的文件:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('', include('transformate.urls')), # Here was the bug
    path('admin/', admin.site.urls),
]

暫無
暫無

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

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