Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 成功过帐数据后显示Django模板_Python_Html_Django_Templates_Model - Fatal编程技术网

Python 成功过帐数据后显示Django模板

Python 成功过帐数据后显示Django模板,python,html,django,templates,model,Python,Html,Django,Templates,Model,我的Django模板有问题: forms.py: class SupportForm(forms.Form): name = forms.CharField() message = forms.CharField() models.py: class Message(models.Model): user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) name =

我的Django模板有问题:

forms.py:

class SupportForm(forms.Form):
    name = forms.CharField()
    message = forms.CharField()
models.py:

class Message(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    name = models.CharField(max_length=100)
    message = models.CharField(max_length=100)

    def __str__(self):
        return self.user.username
views.py:

class my_view(LoginRequiredMixin, View):
    def get(self, request, *args, **kwargs):
        try:
            messages = Message.objects.filter(user=request.user)
            context = {
                'object': messages,
            }
            return render(self.request, 'my.html', context)
        except:
            return render(request, "my.html",{})

    def post(self, request, *args, **kwargs):
        form = SupportForm(request.POST)
        if form.is_valid():
            name = form.cleaned_data['name']
            message = form.cleaned_data['message']
            message_model = Message(
                user=request.user,
                name = name,
                message = message,
                )
            message_model.save()
        return redirect('/my/')
class my_view(ListView):

    model = Message
    template_name = "my.html"

    def post(self, request, *args, **kwargs):
        form = SupportForm(request.POST)
        if form.is_valid():
            name = form.cleaned_data['name']
            message = form.cleaned_data['message']
                message_model = Message(
                user=request.user,
                name = name,
                message = message,
                )
            message_model.save()
            return redirect('/my/')
my.html:

object:{{ objects }}<br>
name:{{objects.name.1}}<br>
message:{{objects.message.1}}<br>

{% for item in objects_list %}

{{ item.name }}

{% endfor %}
{% for item in object_list %}

{{ item.name }}
{{ item.message|safe }}
<br>

{% endfor %}
object:{{objects}}
名称:{{objects.name.1}}
消息:{{objects.message.1}}
{对象中项目的%u列表%} {{item.name} {%endfor%}
我想在html中发布名称和消息,然后在“输入”下显示它。邮局很好。然后我想显示我的名字和信息。 问题在于用html查看我的对象:我什么都看不见。我做错了什么?

在上下文变化中

            context = {
                'objects': messages,
            }
在HTML中

{% for object in objects %}

name:{{object.name}}<br>
message:{{object.message}}<br>

{% endfor %}
{%for objects%}
名称:{{object.name}}
消息:{{object.message}}
{%endfor%}
您将其称为
对象
而不是
对象
试试看,让我知道编辑:正在工作

views.py:

class my_view(LoginRequiredMixin, View):
    def get(self, request, *args, **kwargs):
        try:
            messages = Message.objects.filter(user=request.user)
            context = {
                'object': messages,
            }
            return render(self.request, 'my.html', context)
        except:
            return render(request, "my.html",{})

    def post(self, request, *args, **kwargs):
        form = SupportForm(request.POST)
        if form.is_valid():
            name = form.cleaned_data['name']
            message = form.cleaned_data['message']
            message_model = Message(
                user=request.user,
                name = name,
                message = message,
                )
            message_model.save()
        return redirect('/my/')
class my_view(ListView):

    model = Message
    template_name = "my.html"

    def post(self, request, *args, **kwargs):
        form = SupportForm(request.POST)
        if form.is_valid():
            name = form.cleaned_data['name']
            message = form.cleaned_data['message']
                message_model = Message(
                user=request.user,
                name = name,
                message = message,
                )
            message_model.save()
            return redirect('/my/')
my.html:

object:{{ objects }}<br>
name:{{objects.name.1}}<br>
message:{{objects.message.1}}<br>

{% for item in objects_list %}

{{ item.name }}

{% endfor %}
{% for item in object_list %}

{{ item.name }}
{{ item.message|safe }}
<br>

{% endfor %}
{%用于对象列表%中的项]
{{item.name}
{{item.message | safe}}

{%endfor%}
我在前面注意到了这一点,但遗憾的是它并没有解决这一问题。您可以尝试使用消息:{{object.message}}而不使用1直到什么都没有发生。将视图更改为ListView解决了问题。