相关疑难解决方法(0)

Django - 从POST请求获取值

我有以下django模板(http:// IP/admin/start /被分配给一个名为view的假想视图):

{% for source in sources %}
  <tr>
    <td>{{ source }}</td>

    <td>
    <form action="/admin/start/" method="post">
      {% csrf_token %}
      <input type="hidden" name="{{ source.title }}">
      <input type="submit" value="Start" class="btn btn-primary">
    </form>
    </td>

  </tr>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

sourcesobjects.all()视图中引用的Django模型.每当单击"开始"提交输入时,我希望"开始"视图{{ source.title}}在返回呈现页面之前使用函数中的数据.如何将信息(在本例中为隐藏输入)收集到Python变量中?

python django post

69
推荐指数
3
解决办法
17万
查看次数

Django:在通用DetailView中实现表单

在浏览了几个Google搜索结果页面之后,我仍然拼命陷入同样的​​问题。我正在尝试在博客文章下实现评论字段。感谢您的任何提示和建议!

我正在使用Django中的Blog进行工作,该博客中设置了第一个通用的ListView来简要显示所有可用的博客帖子,并设置了第二个通用的DetailView来更详细地显示特定的博客帖子。现在,我想在特定博客帖子下方放置一个add_comment_field,并在其下方显示所有其他注释。当注释表单显示在单独的页面上但与DetailView不在同一页面上时,它可以工作,这是理想的结果。

我怀疑这与views.py和forms.py之间的相互作用有关,但是我无法弄清楚问题所在。

再次感谢您的帮助!

views.py

from django.shortcuts import render, get_object_or_404, redirect
from .models import Post, Comment
from .forms import CommentForm
from django.views.generic.detail import DetailView

class ParticularPost(DetailView):
    template_name='blog/post.html'
    model = Post

    def add_comment_to_post(self, pk):
        post = get_object_or_404(Post, pk=pk)
        if self.method == "POST":
            form = CommentForm(self.POST)
            if form.is_valid():
                comment = form.save(commit=False)
                comment.post = post
                comment.save()
                return redirect('post_detail', pk=post.pk)
        else:
            form = CommentForm()
        return {'form': form}
Run Code Online (Sandbox Code Playgroud)

urls.py

from django.conf.urls import url, include
from django.views.generic import ListView, DetailView
from .models import Post, Comment
from …
Run Code Online (Sandbox Code Playgroud)

forms django blogs comments detailview

5
推荐指数
1
解决办法
3101
查看次数

标签 统计

django ×2

blogs ×1

comments ×1

detailview ×1

forms ×1

post ×1

python ×1