2017-11-29 15 views
0

ジャンゴ1.11のpythonジャンゴ:ディレクトリ内のビュー、モデルとフォーム

のPython 3.xの

私はフォルダにモデル、ビューやフォームを脱走しようとしています。私はモデルから始め、それはうまくいくように見えました。 views.pyviews/index.pyに変更すると、私は悩まされています。

私はこの上の記事を見ていると私は私が正しく__init__.pyファイルを設定しています思いが、makemigrationsはまだ私についてviews/Profile.pyで叫びます。

File "/home/me/AppBase/MyApp/Members/urls.py", line 3, in <module> 
    from . import views 
    File "/home/me/AppBase/MyApp/Members/views/__init__.py", line 1, in <module> 
    from .Profile import * 
    File "/home/me/AppBase/MyApp/Members/views/Profile.py", line 7, in <module> 
    from MyApp.Members.models.Profile import * 
ImportError: No module named 'MyApp.Members' 

ファイル構造

MyApp 
|-- Members 
| |-- __init__.py 
| |-- account_adapter.py 
| |-- admin.py 
| |-- apps.py 
| |-- forms 
| | |-- ProfileForm.py 
| | |-- __init__.py 
| |-- models 
| | |-- Profile.py 
| | |-- __init__.py 
| |-- tests.py 
| |-- urls.py 
| `-- views 
|  |-- Profile.py 
|  |-- __init__.py 

views/__init__.pyは次のとおりです。

from .Profile import * 

views/Profile.pyは次のとおりです。

from django.contrib import messages 
    from django.core.exceptions import * 
    from django.shortcuts import redirect 
    from django.shortcuts import render 

    from MyApp.Members.models.Profile import * 


    def create_profile(user): 
     pass 


    def profile(request): 
     if not request.user.is_authenticated: 
      return redirect('/account/login') 

     try: 
      profile = Profile.objects.get(user=request.user) 
      messages.add_message(request, 1, "have profile") 
     except ObjectDoesNotExist: 
      messages.add_message(request, 1, "create profile") 
      create_profile(request.user) 

     return render(request, 'Members/index.html') 

urls.pyは次のとおりです。

from django.conf.urls import url 

    from . import views 

    urlpatterns = [ 
     url(r'^$', views.Profile, name='profile'), 
    ] 

私はPyCharmをIDEとして使用しており、すべてのパスがOKであると主張しています。私は何が欠けているのか分かりません。

+0

に役立ちます願っています。メンバーと同じレベルでpy'フォルダ – arcegk

+0

申し訳ありませんが、そこには、投稿をできるだけ小さく保つために私はそれを含めませんでした。 –

答えて

1
from Members.models.Profile import * 

あなたは、プロジェクト名から絶対的な輸入を必要とappnameのを使用して、あなたが必要なものをインポートいけない、これは私はあなたが__ `__initが欠けていると思う

+0

ありがとう!それはうまくいった。 PyCharmは、メンバーへの未解決の参照があると主張していますが、私はそれを無視します。 –

関連する問題