2013-04-21 3 views
-1

У меня есть модель под названием Finhall и поля под ней. Но, на мой взгляд, я хочу получить значение поля state, на которое пользователь нажал, чтобы фильтровать другие места в этом же состоянии. Попробовав эти коды, я получаю ошибку ниже:NameError In Django View

    global name 'finhall' is not defined 

Модели

class Finhall(models.Model): 
    user=models.ForeignKey(User) 
    name=models.CharField(max_length=250, unique=True) 
    address=models.CharField(max_length=200) 
    city=models.CharField(max_length=200) 
    state=models.CharField(max_length=200, help_text='Las vegas') 

    def __unicode__(self): 
     return u'%s' % (self.name) 

Просмотров

def homedetail(request,finhall_id,slug): 
    qs=Finhall.objects.all() 

    try: 
     post=qs.get(id=finhall_id,slug=slug) 
    except Finhall.DoesNotExist: 
     post=None 

    if post: 
     similar_posts=qs.filter(finhall.state) #this line is causing the error 

    else: 
     similar_posts=Finhall.objects.none() 
    return render_to_response('homedetail.html',{'post':post,'similar_posts':similar_posts},context_instance=RequestContext(request)) 

Я пытался не исправить эту ошибку в течение всего дня еще не успех !

+2

Почему 'finhall.state'? Разве это не должно быть «post.state»? – Matthias

+0

Я попробовал, и у меня такая же ошибка! :( – picomon

+0

После перезагрузки моего сервера я получаю слишком много значений, чтобы распаковать ошибку. Любая идея? – picomon

ответ

1

Ниже линии я установил:

similar_posts=qs.filter(state=post.state) 

Благодаря Matthias за идею!

0

Вы импортировали библиотеки?

from app.models import Finhall 

Скопируйте вашу модель для получения дополнительной информации.

+0

да, я импортировал все библиотеки! – picomon