2017-02-01 5 views
1

プロジェクトバックエンドでdjango 1.10.5とmongodbを使用しています。プロジェクトの構成は次のとおりです。djangoでは、INSTALLED_APPSリストのsettings.pyファイルにアプリケーション名を定義する必要がありますか

project_name 
|-- applications 
| |-- app1 
| | |-- admin.py 
| | |-- upload.py 
| | |-- __init__.py 
| | |-- migrations 
| | | `-- __init__.py 
| | |-- models.py 
| | |-- services.py 
| | |-- urls.py 
| | |-- views.py 
| |-- __init__.py 
|-- __init__.py 
|-- manage.py 
|-- project_name_config 
    |-- __init__.py 
    |-- settings 
    | |-- dev_settings.py 
    | |-- __init__.py 
    | |-- prod_settings.py 
    | |-- settings.py 
    |-- urls.py 
    |`-- wsgi.py 

私は仮想環境を使用しています。私はディレクトリアプリケーションの下でmanage.pyを使ってアプリケーションを作成しました。私は私が私のsettings.pyからAPP_NAMEを取り外すとき

INSTALLED_APPS = [ 
'django.contrib.admin', 
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.messages', 
'django.contrib.staticfiles', 
'corsheaders', 
'applications.app1', 
] 

AS-それは

(virtEnv):~$python manage.py runserver 
Unhandled exception in thread started by <function wrapper at 0x7fe94e554848> 
Traceback (most recent call last):File "/home/dir_project/virtEnv/local/lib/python2.7/site- packages/django/utils/autoreload.py", line 226, in wrapper 
fn(*args, **kwargs) 
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 113, in inner_run 
autoreload.raise_last_exception() 
    File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/utils/autoreload.py", line 249, in raise_last_exception 
six.reraise(*_exception) 
    File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/utils/autoreload.py", line 226, in wrapper 
fn(*args, **kwargs) 
    File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/__init__.py", line 27, in setup 
apps.populate(settings.INSTALLED_APPS) 
    File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate 
app_config = AppConfig.create(entry) 
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/apps/config.py", line 90, in create 
module = import_module(entry) 
    File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module 
__import__(name) 
ImportError: No module named app1 

AS-エラーを与えてでもさ、settings.pyにINSTALLED_APPSリストの下にAPP_NAMEを追加したDjangoのチュートリアルを1として アプリケーション、ビューなどがすべて動作しています。

将来のスコープを考慮して、INSTALLED_APPSリストのsettings.pyにapp_nameを追加することは必須です。

ありがとうございます。

答えて

1

DBにテーブルとしてモデルを作成する場合、またはカスタムテンプレートタグを作成して機能させる場合は、INSTALLED_APPSにapp_nameを保存することが必須です。あなたの実際のアプリケーションapp1はアプリケーションフォルダ内にあるので、をINSTALLED_APPSに保存してください。

+0

お返事ありがとうございます。 settings.pyにapplications.app1を追加すると、ImportErrorとしてエラーが発生します:project_name.applications.app1.appsという名前のモジュールがありません – sachin27

+0

vshare.applications.articleApp.appsこのパスがプロジェクト構造内に表示されません。プロジェクトの構造を更新できますか?また、どのファイルでもvshare.applications.articleApp.appsを使用しているかどうかを確認できますか? – MicroPyramid

+0

エラーは、ImportError:project_name.applications.app1.appsという名前のモジュールはありません – sachin27

関連する問題