我有一个非常简单的项目有问题。描述如下。我的问题是是否有可能自己解决这些问题(即没有深入了解Django内部)?不是通过在Internet上搜索,而是通过调试或检查详细日志。
我的具体问题是ImageField。我有
class Advert(models.Model):
title = models.CharField(max_length=200)
photo = models.ImageField(upload_to='adverts', null=True)
class AdvertEditForm(ModelForm):
class Meta:
model = Advert
def advert_edit(request, adv_id):
if request.method == 'GET':
adv = get_object_or_404(Advert, pk=adv_id)
form = TestApp.forms.AdvertEditForm(instance=adv)
else:
adv = get_object_or_404(Advert, pk=adv_id)
form = TestApp.forms.AdvertEditForm(request.POST, instance=adv)
if form.is_valid():
form.save()
return HttpResponseRedirect(reverse('TestApp:advert_details', kwargs={'adv_id': adv_id}))
return render(request, 'adverts/edit.html', {'adv_id': adv_id, 'form': form})
当我用这个表单打开页面时,选择了一个文件进行上传并按下提交,我得到了#34;这个字段是必需的"错误和带有空字段的相同表单(未选择上传文件)。日志中没有错误/没有未捕获的异常 - 没有。解决方案是将request.FILES参数添加到AdvertEditForm构造函数调用。
我使用Eclipse和PyDev,所以我有一个交互式调试器。但是有太多的代码,我无法找到值清除的地方或为什么不通过它。停止所有提出的例外也没有帮助,因为有太多例外
raise AttributeError(attr) in django/utils/six.py,
上的例外情况
memo[id(memo)].append(x) in python/Lib/copy.py
等等。
答案 0 :(得分:0)
您可以使用各种形式的调试,shell,测试,也可以安装Django调试工具栏,它提供了大量有关项目的信息。