Django如何指定目录创建app

通过pycharm新建app时,需要指定目录。因为manage.py和APP是在同一级目录下,不指定目录的话,新建的app会和APP在同一级。

1.首先先在APP目录下,新建一个和要建的app同名的文件夹,比如goods,删除多余的__init__.py文件,不然在创建的时候会缺少migrations文件夹

2.建完目录,执行命令:

python manage.py  startapp goods ./apps/goods 

# Application definition
# sys.path.append(os.path.join(BASE_DIR, "apps"))
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'apps.basic',
    'apps.goods',
]

每多执行一个 startapp *** ./apps/*** 时,都要在INSTALLED_APPS中添加已经创建好的apps名称,例如在创建goods时,就要把已经创建好的basic加到INSTALLED_APPS中。

并且要修单个项目中的apps.pyname属性,自动创建时name = 'goods' 修改成name = 'apps.goods'

from django.apps import AppConfig


class GoodsConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'apps.goods'

因为项目路径问题上,利用PyCharm创建应用时,不要在settings.py中添加 sys.path.append(os.path.join(BASE_DIR, "apps")) 不然会提示应用与现有模块重名的错误

使用vscode创建时,需要则需要

posted @ 2023-07-02 13:25  笑而不语心自闲  阅读(135)  评论(0编辑  收藏  举报