2013-04-29 55 views
0

我的意願是讓一個選擇菜單,如下因素選擇:沒有發現模塊的Django模型要求

models.py 
TITLE_CHOICES = (
    ('MR', 'Mr.'), 
    ('MRS', 'Mrs.'), 
    ('MS', 'Ms.'), 
) 

hello.html顯示。不過,我不斷收到此錯誤:ImportError: No module named hello

對象: #continuation models.py

class hello(models.Model): 
    title = models.CharField(max_length=3, choices=TITLE_CHOICES) 

    def __unicode__(self): 
     return self.name 

上view.py請求:

from django.http import HttpResponse 
from django.template.loader import get_template 
from django.template import Context 
from testApp.models import hello 
from testApp.models.hello import title 
from django.shortcuts import render_to_response 
from django.template import RequestContext 


def contato(request): 
    form = hello() 
    return render_to_response(
     'hello.html', 
     locals(), 
     context_instance=RequestContext(request), 
    ) 

def hello_template(request): 
    t = get_template('hello.html') 
    html = t.render(Context({'name' : title})) 
    return HttpResponse(html) 

我在INSTALLED_APPS應用(setting.py) :

INSTALLED_APPS = (
'testApp', 
'hello', 
) 

A呃幫助表示讚賞。

回答

0

爲什麼它在您安裝的應用程序中hello?我認爲這可能是問題所在。 hello是您的models.py中的一類,屬於您的testApptestApp是您必須包含在您的INSTALLED_APPS中的唯一東西。

此外,你應該從代碼中刪除這一行:from testApp.models.hello import title這也會產生一個錯誤,因爲你不能從一個類中導入一個字段。如果您需要title字段訪問,你都必須做這樣:

def contato(request): 
    form = hello() 
    title = form.title 
    return render_to_response(
     'hello.html', 
     locals(), 
     context_instance=RequestContext(request), 
    ) 

def hello_template(request): 
    t = get_template('hello.html') 
    # see here the initialization and the access to the class field 'title' 
    title = hello().title 
    html = t.render(Context({'name' : title})) 
    return HttpResponse(html) 
+0

它採空給出錯誤,當我驗證,但是當我運行服務器,並嘗試接取它返回的意見導入錯誤的hello.html的.py in:from testApp.models.hello import title' – ClaudioA 2013-04-29 02:23:42

+0

異常類型:\t導入錯誤 異常值:\t 沒有名爲hello的模塊 – ClaudioA 2013-04-29 02:23:58

+0

也刪除該行。 'hello'是一個類,不是一個模塊,你不能從中導入任何東西。 'title'是hello類中的一個字段。您不會導入它,您可以從hello類中導入'hello'並訪問'title'。 – 2013-04-29 02:40:10

相關問題