0

django1.4.2を使用してdjangoプロジェクトを作成しました。adsiteこのプロジェクトには1つの'app'( )があります。そしてそれは動作します。しかし、いくつかの「py」ファイルを「app」フォルダーにコピーするとNo module named models、views.pyでエラーが発生しました。そしてParent module adsite.adsiteviews.mainhanlder does not exist.、新しいファイルを__init__「アプリ」に登録する必要がありますか?対処された新しいファイルはimportルールに違反しましたか?

views.py

from django.http import HttpResponse
from django.template import Context, loader    
from adsite.models import UserInfo

def showusers(request):
    userlist = UserInfo.objects.all()
    c = Context({
        'userlist':userlist,
    })
    t = loader.get_template('users.html')

    return HttpResponse(t.render(c))

コピーされたファイル:adsiteviews.py

class mainhanlder(TemplateView)
    def get(self):
    """ """        
    variables = {
                'user': self.get_current_user(),
                'mchosts' : MCHOSTS, 
                'servers' : servers}

    index_templ = tmpl_lookup.get_template("index.html")
    body = index_templ.render(**variables)
    self.write(body)

urls.py

urlpatterns = patterns('',
    # Examples:
    url(r'^$', 'adsite.adsiteviews.mainhandler.as_View()'),
    url(r'^users/$', 'adsite.views.showusers'),

私にはこの問題についての手がかりがありません。任意の提案をいただければ幸いです。あなたの時間のためのthx。

4

1 に答える 1

0

まず第一に、あなたのurlconfは完全に間違っています。関数ベースのビューと同じようにクラスベースのビューを呼び出すことはできません。具体的には、urls.pyは次のようになります。

from adsite.adsiteviews import mainhandler

urlpatterns = patterns('',
    # Examples:
    url(r'^$', mainhandler.as_View()),
    url(r'^users/$', 'adsite.views.showusers'),

次に、エラーNo module named modelsはおそらく正確に次のことを意味します。ディレクトリにmodels.pyという名前のファイルが必要であり、モデル定義adsiteが含まれている必要があります。UserInfo通常、デフォルトでコマントによって作成されるため、models.pyがない理由はわかりませんstartapp

于 2013-01-18T23:33:12.097 に答える