Django - CreateView - 如何声明变量并在模板中使用它

2024-02-22

如何在 Django 的 Createview 中声明变量,以便我可以从其模板中使用它? 例如,我想在模板中使用 {{ place_slug }} 。我从 urls.py 传递它,如下所示:

urls.py:

urlpatterns = patterns('',
    (r'^new/(?P<place_slug>[\w\-\_]+)/?$', PictureCreateView.as_view(), {}, 'upload-new'),
)

视图.py:

class PictureCreateView(CreateView):
    model = Picture

    def dispatch(self, *args, **kwargs):
        self.place = get_object_or_404(Place, slug=kwargs['place_slug'])
        return super(PictureCreateView, self).dispatch(*args, **kwargs)

    def form_valid(self, form):
        more code here

覆盖 get_context_data 并设置 context_data['place_slug'] = your_slug

像这样的事情:

def get_context_data(self, **kwargs):
    context = super(PictureCreateView, self).get_context_data(**kwargs)
    context['place_slug'] = self.place.slug
    return context

有关于此的更多信息,请参见Django 文档 https://docs.djangoproject.com/en/dev/topics/class-based-views/#adding-extra-context.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django - CreateView - 如何声明变量并在模板中使用它 的相关文章

随机推荐

  • Python 向上和向下计数循环

    我怎样才能简单地转换这个循环以从 1 计数到 100 并显示数字 我最近开始写代码了 倒数时效果很好 但我不知道如何让它从 1 100 example count 100 while count gt 0 print count count
  • Magento 管理员 404

    我们最近将多域 magento 设置从共享主机迁移到专用服务器 一切工作正常 但当我尝试进入管理部分时 登录后出现任何 404 错误 如果我从网址中删除index php 它似乎可以工作 但是一旦我单击管理部分中的另一个链接 它就会再次出现
  • 无法将按钮与水平形式对齐(非内联)(Bootstrap)

    在下面的代码中 我有 2 个按钮和 3 个带标签的输入 我希望按钮与输入对齐 但它们与标签对齐 我尝试过内联表单 但将标签放在侧面是行不通的 在不过度破坏引导程序的情况下完成此任务的最佳选择是什么
  • 在 Spark 结构化流中组合窗口 (groupBy) 和 mapGroupsWithState (groupByKey)

    目前使用 Spark 2 2 0 结构化流 给定带有水印的时间戳数据流 有没有办法结合 1 groupBy通过时间戳字段和其他分组标准实现窗口化的操作 2 groupByKey操作才能申请mapGroupsWithState到自定义会话组
  • 如何使用蓝牙在应用程序内发送.apk文件

    有什么办法可以发送吗 apk在应用程序内使用蓝牙文件 例如我们启动应用程序然后发送 apk使用应用程序内的共享图标文件 假设您想发送自己的应用程序 apk 这很简单 Get current ApplicationInfo to find a
  • 如何增加或减少listview每一行中edittext的值?

    我创建一个Listview in my Listview我有两个Buttons和一个Edittext In my Edittext我想增加价值Edittext as per Button的点击 我遵循了很多教程 但它仍然无法在我的Listv
  • 由于表单提交输入阻止,文本区域输入按键不起作用

    我有一个表单 其中使用了以下代码来防止按 Enter 键提交表单 因此 Enter 键在任何文本区域输入中都不起作用 由于主体功能 我无法输入新行 我该如何解决这个问题
  • jQuery 滚动事件:如何确定滚动量(滚动增量)(以像素为单位)?

    我有这个活动 window scroll function e console log e 我想知道我有多少滚动值 以像素为单位 因为我认为滚动值取决于窗口大小和屏幕分辨率 功能参数e不包含此信息 我可以存储 window scrollTo
  • Laravel/Angular:将 php 页面内的数据传递给 angularjs

    我有以下 laravel html blade 页面 我想传递一个storeid然后可以通过 Angular 获取它 然后使用它来获取并执行一些操作 以下是我现在如何实现它 但是有更好的方法来实现相同的效果吗 刀片部分 div p stor
  • 如何在 Xcode 控制台中禁用 os_log_info 和 os_log_debug 消息?

    用于日志记录的现代 API 可以在终端中轻松配置 然而 Xcode 似乎输出所有级别 包括 INFO 和 DEBUG 这非常烦人 因为大多数时候你只想看到os log error and NSLog又名 出了问题 和 这很重要 那么有没有办
  • 为什么 lambda 在抛出运行时异常时会更改重载?

    请耐心等待 介绍有点冗长 但这是一个有趣的谜题 我有这个代码 public class Testcase public static void main String args EventQueue queue new EventQueue
  • ProgressDialog 动画在较大的 setText() 上暂停

    我正在尝试在 EditText 中设置大文本 该操作可能需要 30 秒以上 因此我使用 ProgressDialog 它会显示 但没有动画 然后在操作完成后消失 这是我的简化代码 class FileOpener extends Async
  • 如何在点宏中访问案例类的参数列表

    我正在尝试在 dotty 中学习元编程 特别是编译时代码生成 我认为通过构建一些东西来学习是一个很好的方法 所以我决定制作一个 CSV 解析器 它将行解析为案例类 我想使用点宏来生成解码器 trait Decoder T def decod
  • 为什么需要 Server.HtmlEncode?

    我无法理解为什么需要 Server HtmlEncode MSDN 指出它用于将潜在不安全的字符编码为 HTML 编码的等效字符 有人可以告诉我这些字符如何不安全并要求我们使用 Server HtmlEncode 吗 Thanks 字符可能
  • 使用 Win API 确定可执行文件的实例是否已在运行

    我需要确保我的 C 应用程序只有 1 个实例正在运行 我该如何使用 Win API 检索有关我当前应用程序的信息 GetCurrentProcess 会给我一个关于我的应用程序的句柄 我如何检索有关它的信息 检索用户所有正在运行的进程的列表
  • 如何在 Android Oreo 中管理来自未知来源的安装?

    在 Android Oreo 8 0 中 对如何允许安装来自未知来源的应用程序 从用户的角度来看 以及获取安装权限的过程 从开发人员的角度来看 进行了一些更改 由于我发现在开发人员方面找到所有必要的步骤特别困难 因此我认为在这里询问解决方案
  • 比较 Haskell 中的函数

    有什么方法可以比较 Haskell 中的两个函数吗 我的想法是答案是否定的 因为函数不会派生 Eq 类型类 然而 我正在尝试编写一个非常简单的函数 这似乎是一件正常的事情 search Enum a gt a gt a gt Card gt
  • 如何将 readLines 的输出转换为 R 中的数据帧

    我有一个包含多行的 txt 文件 每行都是由空格分隔的文本 每行中的列数可能不同 我需要一次读取每一行 将其放入数据框中并打印 我试过这个 x lt readLines output txt for i in 2 length x data
  • 为什么二叉树的插入方法中根总是为空

    我正在尝试为 BST 类实现递归插入节点方法 public void insertNode Node r Node n if r null System out println r n n data r n else System out
  • Django - CreateView - 如何声明变量并在模板中使用它

    如何在 Django 的 Createview 中声明变量 以便我可以从其模板中使用它 例如 我想在模板中使用 place slug 我从 urls py 传递它 如下所示 urls py urlpatterns patterns r ne