无法将关键字 'carmodel' 解析为字段。选项是:exterior_color,或者,interior_color
Cannot resole keyword 'carmodel' into field. Choices are: exterior_color, id, interior_color
因为我想过滤外键,所以我在views.py
的方法dropdownlistsearch()
中使用了carmodel
和__。当 运行 代码时,它告诉它必须是一个字段。我不明白这部分。为什么我会收到此错误。我正在使用 django 1.6.5。
models.py
from django.db import models
class CarInfo(models.Model):0
vin_number = models.CharField(max_length = 17)
model = models.ForeignKey(CarModel)
timestamp = models.DateTimeField(auto_now_add = True, auto_now = False)
updated = models.DateTimeField(auto_now_add = False, auto_now = True)
def __unicode__(self):
return self.vin_number
class CarModel(models.Model):
model = models.CharField(max_length = 60)
def __unicode__(self):
return self.model
views.py
def dropdownsearch(request):
try:
q = request.GET.get('q')
except:
q = None
if q:
cars = CarInfo.objects.filter(carmodel__model__contains=q)
template ='productions/resultstwo.html'
else:
template = 'prodcutions/cars.html'
context = {}
return render(request,template,context)
cars.html
<form action="/cars/s/" method="get">
<select name="q">
{% for info in modelinfos %}
<option value="{{info.model}}">{{info.model}}</option>
{% endfor %}
</select>
</form>
您正在过滤正向关系,因此您使用您定义的实际字段,model
。
CarInfo.objects.filter(model__model__contains=q)
def 测试表(请求):
form = CarInfo(request.POST or None)
如果 form.is_valid():
save_it = form.save(提交=假)
save_it.save()
return render_to_response("productions/testform.html",locals(),context_instance = RequestContext(请求))
因为我想过滤外键,所以我在views.py
的方法dropdownlistsearch()
中使用了carmodel
和__。当 运行 代码时,它告诉它必须是一个字段。我不明白这部分。为什么我会收到此错误。我正在使用 django 1.6.5。
models.py
from django.db import models
class CarInfo(models.Model):0
vin_number = models.CharField(max_length = 17)
model = models.ForeignKey(CarModel)
timestamp = models.DateTimeField(auto_now_add = True, auto_now = False)
updated = models.DateTimeField(auto_now_add = False, auto_now = True)
def __unicode__(self):
return self.vin_number
class CarModel(models.Model):
model = models.CharField(max_length = 60)
def __unicode__(self):
return self.model
views.py
def dropdownsearch(request):
try:
q = request.GET.get('q')
except:
q = None
if q:
cars = CarInfo.objects.filter(carmodel__model__contains=q)
template ='productions/resultstwo.html'
else:
template = 'prodcutions/cars.html'
context = {}
return render(request,template,context)
cars.html
<form action="/cars/s/" method="get">
<select name="q">
{% for info in modelinfos %}
<option value="{{info.model}}">{{info.model}}</option>
{% endfor %}
</select>
</form>
您正在过滤正向关系,因此您使用您定义的实际字段,model
。
CarInfo.objects.filter(model__model__contains=q)
def 测试表(请求): form = CarInfo(request.POST or None) 如果 form.is_valid(): save_it = form.save(提交=假) save_it.save() return render_to_response("productions/testform.html",locals(),context_instance = RequestContext(请求))