从用户处获取输入,并在同一页面上显示相同的输入

帕米林·阿德贡

嗨,我正在尝试在django中创建一个帖子表单,在该表单中,用户创建了一个帖子,并且该帖子在同一页面上显示给他们,到目前为止,我没有成功。我的文章显示在页面上,但是张贴文章的表单并不只显示“提交”按钮。

views.py

def articles(request):
    args = {}
    args.update(csrf(request))
    args ['posts'] = post.objects.filter(user = request.user)
    args ['full_name'] = User.objects.get(username = request.user.username)

    return render_to_response('articles.html', args)



def article(request, post_id=1):

    return render(request, 'article.html', 
                  {'post': post.objects.get(id=post_id) })

def create(request):
    if request.POST:
        form = PostForm(request.POST, request.FILES)
        if form.is_valid():
            a = form.save(commit=False)
            a.user = User.objects.get(username = request.user.username)
            a.save()

            messages.add_message(request, messages.SUCCESS, "You Article was added")

            return HttpResponseRedirect('/posts/all')
    else:
        form = PostForm()

    args = {}
    args.update(csrf(request))

    args['form'] = form

    return render_to_response('articles.html', args)

article.html

<form action="/posts/create/" method="post" enctype="multipart/form-data">{% csrf_token %}
<ul>
{{form.as_ul}}
</ul>

<input type="submit" name="submit" value="Create Article">

</form>

{% if posts.count > 0 %}

{% for post in posts %}

    <div>
    <h2><a href="/posts/get/{{ post.id }}/">{{full_name}}</a></h2>
    <p>{{ post.body|lower|truncatewords:50 }}</p>
    <p>{{post.likes}} people liked this article</a></p>
    </div>

{% endfor %}

{% else %}

<p>None to show!</p>

{% endif %}

{% endblock %}

urls.py

from django.conf.urls import patterns, include, url

urlpatterns = patterns('',

        url(r'^create/$', 'posts.views.articles'),
        url(r'^get/(?P<post_id>\d+)/$', 'posts.views.article'),
        url(r'^create/$', 'posts.views.create'),
        url(r'^like/(?P<post_id>\d+)/$', 'posts.views.like_article'),
        url(r'^article/(?P<post_id>\d+)/$', 'posts.views.add_comment'),
    )
弗兰克·威尔斯

首先,您没有将表单传递给articles()中的模板。您需要遵循以下原则:

args['form'] = YourForm()

在您的第一个视图中。另外,在您的创建视图中,您可以执行以下操作:

a.user = User.objects.get(username = request.user.username)

它将再次对用户进行不必要的数据库查找,您可以这样做以使其更清楚,更快捷:

a.user = request.user

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

调试下拉菜单并在同一页面上显示用户表单输入

来自分类Dev

在同一页面上将用户输入显示为评论

来自分类Dev

通过同一页面上的函数传递输入

来自分类Dev

同一页面上的多个输入 [type=file]

来自分类Dev

选择输入中的onChange事件,然后在同一页面上显示处理结果

来自分类Dev

查询数据库并在同一页面上显示结果

来自分类Dev

显示成功消息并清除发布数据并在同一页面上重定向

来自分类Dev

用于运行 PHP 脚本并在同一页面上显示输出的表单

来自分类Dev

Bootstrap动态输入选择-同一页面上的多个

来自分类Dev

如何在同一页面上获得结果,为什么需要输入?

来自分类Dev

在同一页面上输入文件的多种形式

来自分类Dev

如何在同一页面上获得结果,为什么需要输入?

来自分类Dev

如何在进行 SQL 查询时在同一页面上使用输入变量?

来自分类Dev

使用在同一页面上显示的相同功能将结果相乘

来自分类Dev

使用在同一页面上显示的相同功能将结果相乘

来自分类Dev

从同一页面上具有相同类的espcific表单获取提交

来自分类Dev

同一页面上的用户控件的Multipul实例

来自分类Dev

如果用户传入现有 ID,如何在同一页面上显示错误

来自分类Dev

多个计算,显示在同一页面上

来自分类Dev

在同一页面上显示内容

来自分类Dev

在同一页面上显示错误的PHP

来自分类Dev

在同一页面上显示搜索到的项目

来自分类Dev

多个计算,显示在同一页面上

来自分类Dev

在同一页面上显示多个Google图表

来自分类Dev

在同一页面上显示PHP登录错误?

来自分类Dev

id值在同一页面上获取php

来自分类Dev

从一个HTML页面获取<div>并在另一页面上弹出显示?

来自分类Dev

如何使用ColdFusion / jQuery发布表单,更新查询并在同一页面上显示结果?

来自分类Dev

使用ajax调用将php变量传递给javascript函数,并在同一页面上获取响应文本

Related 相关文章

  1. 1

    调试下拉菜单并在同一页面上显示用户表单输入

  2. 2

    在同一页面上将用户输入显示为评论

  3. 3

    通过同一页面上的函数传递输入

  4. 4

    同一页面上的多个输入 [type=file]

  5. 5

    选择输入中的onChange事件,然后在同一页面上显示处理结果

  6. 6

    查询数据库并在同一页面上显示结果

  7. 7

    显示成功消息并清除发布数据并在同一页面上重定向

  8. 8

    用于运行 PHP 脚本并在同一页面上显示输出的表单

  9. 9

    Bootstrap动态输入选择-同一页面上的多个

  10. 10

    如何在同一页面上获得结果,为什么需要输入?

  11. 11

    在同一页面上输入文件的多种形式

  12. 12

    如何在同一页面上获得结果,为什么需要输入?

  13. 13

    如何在进行 SQL 查询时在同一页面上使用输入变量?

  14. 14

    使用在同一页面上显示的相同功能将结果相乘

  15. 15

    使用在同一页面上显示的相同功能将结果相乘

  16. 16

    从同一页面上具有相同类的espcific表单获取提交

  17. 17

    同一页面上的用户控件的Multipul实例

  18. 18

    如果用户传入现有 ID,如何在同一页面上显示错误

  19. 19

    多个计算,显示在同一页面上

  20. 20

    在同一页面上显示内容

  21. 21

    在同一页面上显示错误的PHP

  22. 22

    在同一页面上显示搜索到的项目

  23. 23

    多个计算,显示在同一页面上

  24. 24

    在同一页面上显示多个Google图表

  25. 25

    在同一页面上显示PHP登录错误?

  26. 26

    id值在同一页面上获取php

  27. 27

    从一个HTML页面获取<div>并在另一页面上弹出显示?

  28. 28

    如何使用ColdFusion / jQuery发布表单,更新查询并在同一页面上显示结果?

  29. 29

    使用ajax调用将php变量传递给javascript函数,并在同一页面上获取响应文本

热门标签

归档