首页 文章

视图chilegaleria.views.AgregarTienda_View未返回HttpResponse对象 . 它返回了None

提问于
浏览
0

我在使用django 1.10.6时遇到此错误:

/ AgregarTienda中的ValueError视图chilegaleria.views.AgregarTienda_View未返回HttpResponse对象 . 它返回了None .

这是我的观点

from django.shortcuts import render
from django.http import HttpResponse
from chilegaleria.forms import AgregarTiendaForm
# Create your views here.
def index(request):
    return render(request, 'chilegaleria/index.html')
def AgregarTienda_View(request):
    if request.method == 'POST':
        form = AgregarTiendaForm(request.POST)
    if form.is_valid():
            form.save()
            return redirect('chilegaleria:index')
    else:
            form = AgregarTiendaForm
            return render(request, 'chilegaleria/AgregarTienda.html', {'form':form})

此外,当我将类Meta:model = DatosTienda添加到我的forms.py文件时,我收到此错误:

C:\ chilegalerias> manage.py检查Traceback(最近一次调用最后一次):文件“C:\ chilegalerias \ manage.py”,第22行,在execute_from_command_line(sys.argv)文件“C:\ Python27 \ lib \ site -packages \ django-1.10.6-py2.7.egg \ django \ core \ management__init __ . py“,第367行,在execute_from_command_line utility.execute()文件”C:\ Python27 \ lib \ site-packages \ django-1.10 .6-py2.7.egg \ django \ core \ management__init __ . py“,第359行,执行self.fetch_command(子命令).run_from_argv(self.argv)文件”C:\ Python27 \ lib \ site-packages \ django -1.10.6-py2.7.egg \ django \ core \ management \ base.py“,第294行,在run_from_argv中自执行(* args,** cmd_options)文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6-py2.7.egg \ django \ core \ management \ base.py“,第345行,执行输出= self.handle(* args,** options)文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6-py2.7.egg \ django \ core \ management \ commands \ check.py“,第68行,句柄fail_level = getattr(checks,options ['fail_level']),File “C:\ Python27 \ LIB \站点包\ djan go-1.10.6-py2.7.egg \ django \ core \ management \ base.py“,第374行,检查include_deployment_checks = include_deployment_checks,文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6 -py2.7.egg \ django \ core \ management \ base.py“,第361行,在_run_checks中返回checks.run_checks(** kwargs)文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6 -py2.7.egg \ django \ core \ checks \ registry.py“,第81行,在run_checks中new_errors = check(app_configs = app_configs)文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6- py2.7.egg \ django \ core \ checks \ urls.py“,第14行,在check_url_config中返回check_resolver(解析程序)文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6-py2.7 . egg \ django \ core \ checks \ urls.py“,第24行,在check_resolver中为resolver.url_patterns中的模式:文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6-py2.7.egg \ django \ utils \ functional.py“,第35行,在get res = instance.dict [self.name] = self.func(instance)文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6- py2.7.egg \ django \ urls \ resolvers.py“,第313行,in url_patterns patterns = getattr(self.urlconf_module,“urlpatterns”,self.urlconf_module)文件“C:\ Python27 \ lib \ site-packages \ django-1.10.6-py2.7.egg \ django \ utils \ functional.py” ,第35行,在get res = instance.dict [self.name] = self.func(instance)文件“C:\ Python27 \ lib \ site-packages \ django-1.10.6-py2.7.egg \ django \ url \ resolvers.py“,第306行,在urlconf_module中返回import_module(self.urlconf_name)文件”C:\ Python27 \ lib \ importlib__init __ . py“,第37行,在import_module中导入(名称)文件”C:\ chilegalerias \ chilegalerias \ urls.py“,第21行,在url(r'^',include('chilegaleria.urls')),文件”C:\ Python27 \ lib \ site-packages \ django-1.10.6-py2.7 . egg \ django \ conf \ urls__init __ . py“,第50行,in include urlconf_module = import_module(urlconf_module)文件”C:\ Python27 \ lib \ importlib__init __ . py“,第37行,在import_module import(name)文件”C:\ chilegalerias \ chilegaleria \ urls.py“,第3行,来自chilegaleria.views导入索引,AgregarTienda_View文件”C:\ chilegalerias \ chilegaleria \ views.py“,第3行,in来自chilegaleria.forms导入AgregarTiendaForm文件“C:\ chilegalerias \ chilegaleria \ forms.py”,第4行,在类AgregarTiendaForm(forms.ModelForm)中:文件“C:\ chilegalerias \ chilegaleria \ forms.py”,第7行,in AgregarTiendaForm类Meta:文件“C:\ chilegalerias \ chilegaleria \ forms.py”,第8行,在Meta Model = DatosTienda NameError:name'DatosTienda'未定义

这是我的forms.py文件:

from django import forms
from chilegaleria.models import models
from django.forms import ModelForm
class AgregarTiendaForm(forms.ModelForm):


    class Meta:
        model = DatosTienda
        fields = [
        'nombre',
        'estado',
        'ciudad',
        'comuna',
        'direccion',
        ]
        labels = {
        'nombre': 'Nombre de la Tienda',
        'estado': 'Region',
        'ciudad': 'Ciudad',
        'comuna': 'Comuna',
        'direccion': 'Direccion',
        }
        widgets = {
        'nombre': forms.TextInput(attrs={'class':'form-control'}),
        'estado': forms.TextInput(attrs={'class':'form-control'}),
        'ciudad': forms.TextInput(attrs={'class':'form-control'}),
        'comuna': forms.TextInput(attrs={'class':'form-control'}),
        'direccion': forms.TextInput(attrs={'class':'form-control'}),
        }

1 回答

  • 0

    文件“C:\ chilegalerias \ chilegaleria \ forms.py”,第8行,在Meta Model = DatosTienda NameError:name'DatosTienda'未定义

    您的日志堆栈表明您必须在文件chilegaleria \ forms.py中导入模型DatosTienda

    还要检查您的视图,因为如果您收到GET请求,则表单未定义,因此您将在分配错误之前获得引用 .

相关问题