我花了好几天试图找到问题的根源,但我仍然没有想到它。
我正在一个允许人们向附近的同伴分享或租赁乐器的网站上工作。其中一个页面是"提供仪器",在此页面上有一个表格。表格有两个主要目的;允许您搜索您附近寻找此工具的人,或将您的商家信息发布到网站上。
如果您点击"搜索",该网站只会查看两个数据,即工具类型和位置。如果您点击"发布",该网站会查看所有输入框(即尺寸,年龄,品牌等),然后输入。
当您单击"搜索"时,会向视图instrument_offering_search(request)
发送Ajax请求,在该视图中应该处理它,并且应该返回结果。但是form
对象永远不会返回有效。
def instrument_offer_search(request):
if request.method == 'POST':
form = InstrumentOfferSearchForm(request.POST)
if form.is_valid():
#always returning false
else:
.....
当您点击"发布"时,会向视图instrument_offering(request)
发送一个Ajax请求,在该视图中处理它并将其添加到数据库中。这很好用
def instrument_offering(request):
if request.method == 'POST':
form = InstrumentOfferForm(request.POST)
if form.is_valid():
#works!
我已使用Chrome工具和pdb
验证了搜索按钮肯定是在发送POST数据。
为什么表格不是有效的?