问题标签 [django-1.3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Django:css在静态文件中引用媒体(django dev / 1.3 / static files)
像 django 用户的任何其他用户一样,我提供静态文件。我选择使用django-staticfiles为 django 1.3 做好准备,它将基本上将它集成到 core中。
我的问题真的很简单——这非常适合将多个媒体源放在一起并在 django 模板中以统一的方式引用它们。但是,我经常在 Css 中使用图像背景,如下所示:
我的问题很简单——如果我使用绝对名称,我必须对它们进行硬编码。如果我使用相对名称,则移动到“子目录”网址会弄乱这些项目的资源位置,并且无法加载它们。
那么,如何将此解决方案扩展到 CSS?所述解决方案必须避免:
- 将 css 嵌入 html 中。我个人避免这种情况。
- 使用硬编码的网址。这不能很好地工作,因为在我的本地设置中,我通常使用 'localhost/project' 和 apache 进行测试(mod_wsgi),而我倾向于使用
project.com
部署。
想法?
model - 关于 django 中 Group_by 的问题
更新这已被确认是 1.3 版的一个错误。这是票http://code.djangoproject.com/ticket/15709
所以我想实现这个SQL:
这是 Django ORM 查询:
但是,翻译后的sql是这样的:
任何人都可以对此有所了解吗?我正在使用 Django 1.3。谢谢!
python - 如何在 Django 中通过 PUT 请求处理文件上传?
我正在实现一个 REST 风格的界面,并希望能够通过 HTTP PUT 请求创建(通过上传)文件。我想创建一个TemporaryUploadedFile
或一个InMemoryUploadedFile
,然后我可以将其传递给我现有的FileField
和.save()
作为模型一部分的对象,从而存储文件。
我不太确定如何处理文件上传部分。具体来说,这是一个 put 请求,我无权访问,因为它在请求request.FILES
中不存在。PUT
所以,一些问题:
- 我可以利用
HttpRequest
类中的现有功能,特别是处理文件上传的部分吗?我知道直接PUT
不是多部分 MIME 请求,所以我不这么认为,但值得一问。 - 如何推断正在发送的 mime 类型?如果我没看错的话,PUT 主体就是没有前奏的文件。因此,我是否要求用户在其标题中指定 mime 类型?
- 如何将其扩展到大量数据?我不想将它全部读入内存,因为那是非常低效的。理想情况下,我会做
TemporaryUploadFile
相关代码的工作 - 一次写一部分?
我查看了这个代码示例,它诱使 Django 将其PUT
作为POST
请求进行处理。如果我做对了,它只会处理表单编码数据。这是 REST,因此最好的解决方案是不假设存在表单编码数据。但是,我很高兴听到有关以某种方式使用 mime(而不是 multipart)的适当建议(但上传应该只包含一个文件)。
Django 1.3 是可以接受的。所以我可以用request.raw_post_data
or做一些事情request.read()
(或者其他更好的访问方法)。有任何想法吗?
python - 如何为 DetailView 指定 pk 或 slug 以外的其他内容
我想知道当您在 Django 1.3 中使用 DetailView 时,是否可以使用除 pk 或 slug 之外的其他东西。
例如,我目前有:
作为我的网址。说我想要类似的东西:
其中 name 将是模型中的一个字段。无论如何让 DetailView 使用它来“抓取”我想要的对象并将其传递给我的模板?
django - Django get() 只需要 2 个参数(给定 3 个)
我正在尝试在我的测试应用程序中使用 DetailView 泛型类,这就是我的看法
*更新模型 *来自这个例子
作为测试
在我的 urls.py 文件中,我得到了
当我导航到http://localhost:8000/author/1时,我收到以下错误
Typer Error get() 正好需要 2 个参数(给定 3 个)
我真的不明白 base.py 中发生了什么。
python - 基于类的视图扩展 UpdateView 未正确保存表单
我试图在 Django 1.3 中使用 UpdateView 保存表单,但似乎遇到了问题。当我保存表单时,它会发布到当前 URL,并且成功 url 是相同的 url。
保存表单时,数据似乎已更改,因为页面上的所有字段都已更新,但是当我刷新时,一切似乎都恢复了。
该表格是一个模型表格,这是我的观点:
我看不出有什么问题,因为 Django 通过 UpdateView 类保存表单并且它扩展了 Mixin。有没有人遇到过这个问题?
python - 如何在 django 1.3 中获取 POST 数据
嘿,我正在按照本教程学习使用 Django 制作 wiki 页面。但是,它是在 django 0.96 中制作的,而我使用的是 Django 1.3,所以有些东西是不同的。有些我已经修复了自己,但是这个我似乎无法让它工作。
我制作了一个将数据提交到视图的表单。这是表格:
并且 /wikicamp/{{page_name}}/save/ url 重定向到 save_page 视图:
但是问题是我收到此错误:
所以我通读了一些文档,比如http://docs.djangoproject.com/en/dev/ref/contrib/csrf/#how-to-use-it。然而,我试图这样做,它仍然给出了同样的错误。
所以:有人知道如何使用 Django 1.3 处理表单发布数据吗?
我认为它与:视图函数使用RequestContext作为模板,而不是Context。但我现在不知道它是什么。
顺便说一句,在我的终端中,它显示了本地主机的 http 请求,它说:在模板中使用了 {% csrf_token %},但上下文没有提供值。这通常是由于没有使用 RequestContext 造成的。
django - Django 1.3 日志记录:未记录 500 个错误
我正在努力让 'django.request' 记录器像宣传的那样工作 - 500 个错误似乎不会传播到附加到它的处理程序。
在每个新项目的默认日志配置中,评论说“此配置执行的日志记录是在每个 HTTP 500 错误时向站点管理员发送电子邮件”。显然,仅当您正确设置了 ADMINS 时才会发送电子邮件,但是当视图引发异常时,我什至没有看到处理程序被调用。
我从一个空项目开始构建了一个测试用例,并将我自己的处理程序添加到“django.request”记录器中:
处理程序本身:
如果我自己在记录器上调用 .error() ,则一切正常。但是当视图生成 500 时,不会调用任何处理程序。我的意见.py:
其他都是项目默认的;DEBUG 为 True,中间件配置不变。我需要启用一些隐藏的配置选项才能像文档中所说的那样进行这项工作吗?
谢谢,马特。
django - 有没有办法并排安装 Django 1.2 和 1.3?
我的一个项目需要使用 Django 1.2。
我也已经有几个项目在同一台服务器上运行在 Django 1.3 上,我需要让它们保持运行。
有没有办法只将 1.2 用于特定项目?
这两个站点都通过 mod_wsgi 在 Apache 上运行。
caching - Django1.3多个gunicorn worker缓存问题
我在 1.3 版本的 django 上遇到了奇怪的缓存问题。我可能有一些配置错误,但不确定是什么。
一个很好的例子是 django-avatar,它使用缓存并且很多人使用它。即使我没有定义缓存后端,头像似乎已被缓存,这本身就可以,但它会不断在缓存的最后一个值之间来回切换。示例:我上传了一个新头像,现在大约 50% 的请求会显示新头像,50% 显示旧头像。如果我删除旧的,我仍有 50% 的时间会在网站上看到它。修复它的唯一方法是通过将其设置为一秒来禁用头像的缓存。
首先我认为这是因为我使用了 django.core.cache.backends.locmem.LocMemCache,我以前从未使用过,但是当我根本没有配置缓存后端时它甚至会发生。
我发现了一个类似的错误: Django缓存错误..即使缓存被禁用
但是我的页面渲染得很好,它的模板标签(现在)会导致我的设置出现问题。
我使用 django 1.3、postgres、nginx、gunicorn 0.12.0、greenlet==0.3.1、eventlet==0.9.16
我只是做了一些更多的测试,并意识到它只有在我使用配置文件启动 gunicorn 时才会发生。如果我从 ./manage.py run_gunicorn 开始,一切都很好。运行“gunicorn_django -c deploy/gunicorn.conf.py”会导致问题。
我能想到的唯一解释是每个工人都有自己的缓存(我想知道为什么,因为我没有定义缓存)。
更新:运行 ./manage.py run_gunicorn -w 4 也会导致同样的问题。因此,我几乎可以肯定是多个工作人员导致了问题,并且每个工作人员分别缓存了这些值。
我的配置:
我也尝试过不使用'eventlet',但得到了同样的错误。
谢谢你的帮助。