Questions tagged «django»

Django是使用Python编写的开放源代码服务器端Web应用程序框架。它旨在减少创建复杂的数据驱动的网站和Web应用程序所需的工作量,并特别注重更少的代码,无冗余以及比隐式更显式。


6
为Python项目添加.gitignore文件的最佳做法?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 2年前关闭。 改善这个问题 我正在尝试收集一些默认设置,而我意识到我没有标准的一件事是.gitignore文件。有一个很棒的线程显示了适用于Visual Studio项目的.gitignore,但是我没有看到很多关于Python和相关工具(PyGTK,Django)的建议。 到目前为止,我有... *.pyc *.pyo 对于已编译的对象 build/ dist/ ...用于setuptools输出。 .gitignore文件有哪些最佳实践,我可以在哪里获得更多关于这些最佳实践的信息?
209 python  django  git  pygtk  gitignore 

12
使用Django创建电子邮件模板
我想使用Django模板发送HTML电子邮件,如下所示: <html> <body> hello <strong>{{username}}</strong> your account activated. <img src="mysite.com/logo.gif" /> </body> 我找不到任何有关的信息send_mail,并且django-mailer仅发送HTML模板,而没有动态数据。 如何使用Django的模板引擎生成电子邮件?


16
以编程方式将图像保存到Django ImageField
好的,我已经尝试了几乎所有内容,但无法正常工作。 我有一个上面带有ImageField的Django模型 我有通过HTTP下载图像的代码(已测试并且可以工作) 图像直接保存到“ upload_to”文件夹中(upload_to是在ImageField上设置的文件夹) 我需要做的就是将已经存在的图像文件路径与ImageField相关联 我已经用6种不同的方式编写了这段代码。 我遇到的问题是我正在编写的所有代码均导致以下行为:(1)Django将创建第二个文件,(2)重命名新文件,在文件末尾添加_名称,然后(3)不会在保留基本为空的重命名文件的情况下传输任何数据。在“ upload_to”路径中剩下的是2个文件,一个是实际图像,一个是图像名称,但为空,当然ImageField路径设置为Django尝试创建的空文件。 。 如果不清楚,我将尝试说明: ## Image generation code runs.... /Upload generated_image.jpg 4kb ## Attempt to set the ImageField path... /Upload generated_image.jpg 4kb generated_image_.jpg 0kb ImageField.Path = /Upload/generated_image_.jpg 如何在不让Django尝试重新存储文件的情况下执行此操作?我真正想要的就是这种效果…… model.ImageField.path = generated_image_path ...但是那当然是行不通的。 是的,我已经经历这里的其他问题,如走了这一个,以及对Django的DOC 文件 更新 在进一步测试之后,仅当在Windows Server上的Apache下运行时,它才会执行此行为。在XP上的“ runserver”下运行时,它不会执行此行为。 我很沮丧 这是在XP上成功运行的代码... f = open(thumb_path, …

5
使用get_or_create的正确方法?
我正在尝试对表单中的某些字段使用get_or_create,但尝试这样做时却出现500错误。 其中一行如下所示: customer.source = Source.objects.get_or_create(name="Website") 对于以上代码,我得到的错误是: Cannot assign "(<Source: Website>, False)": "Customer.source" must be a "Source" instance.
203 python  django 


2
Django查询-id vs pk
编写Django查询时,可以同时使用id / pk作为查询参数。 Object.objects.get(id=1) Object.objects.get(pk=1) 根据django的文档,我知道pk代表主键,它只是一个快捷方式。但是,尚不清楚何时应使用id或pk。
202 django  orm  primary-key 

1
如何在Django中使多对多字段为可选?
当您具有多对多关系(related_name,而不是through)并且尝试使用管理界面时,即使您不必创建第一个条目,也需要输入其中一个关系。 我正在创建一个作为活动组织者的应用。想象一下,我们拥有Event和Group模型,并具有多对多关系。 Django使用related_name另外两个表的索引创建另一个表。 但我看不出为什么这个额外的表已经被填充。 如果我通过phpMyAdmin使用数据库,则可以创建一个Group而无需注册Event,因为两者之间的连接仅通过单独的表进行,并且在给定级别上没有数据库值强制实​​施。 我该如何实现管理界面? 如何在Django中使多对多字段为可选?

6
Django:“项目”与“应用”
我有一个相当复杂的“产品”,准备使用Django构建。在这种情况下,我将避免使用术语“项目”和“应用程序”,因为我不清楚它们在Django中的具体含义。 项目可以有许多应用程序。应用程序可以在许多项目之间共享。精细。 我不是在改造博客或论坛-我看不到产品的任何部分在任何情况下都可以重用。凭直觉,我将其称为“应用程序”。然后,我是否将所有工作都放在一个“ app”文件夹中? 如果是的话 ...就Django的project.app命名空间而言,我倾向于使用myproduct.myproduct,但这当然是不允许的(但是我正在构建的应用程序是我的项目,而我的项目是一个应用程序!)。因此,我相信我可能应该通过为每个“重要”模型构建一个应用程序来接近Django,但是我不知道在架构中将边界划分为应用程序的位置-我有很多东西具有相对复杂关系的模型。 我希望对此有一个通用的解决方案...

5
更改Django的SECRET_KEY的影响
我犯了一个错误,并将Django项目SECRET_KEY提交到公共存储库中。 根据文档https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-SECRET_KEY,此密钥应保持秘密 Django项目已经启动,并且已经有一些活跃用户运行了一段时间。如果更改,会产生什么影响SECRET_KEY?现有的用户,Cookie,会话等是否会受到影响?显然,新产品SECRET_KEY将不再存储在公共场所。
202 django 


5
Django-限制查询结果
我想获取模型的最后10个实例,并具有以下代码: Model.objects.all().order_by('-id')[:10] 首先选择所有实例,然后仅抽取10个实例,这是真的吗?有没有更有效的方法?
200 django 

9
在Django中一页上处理多种形式的正确方法
我有一个模板页面,需要两种形式。如果我仅使用一种形式,则可以像下面的典型示例一样正常: if request.method == 'POST': form = AuthorForm(request.POST,) if form.is_valid(): form.save() # do something. else: form = AuthorForm() 但是,如果我想使用多个表单,我如何让视图知道我仅提交一种表单,而不提交另一种表单(即,它仍然是request.POST,但我只想处理提交表单的表单)发生了吗? 这是该解决方案基于这样的答案expectedphrase和bannedphrase是的提交按钮的不同形式和名称expectedphraseform和bannedphraseform是形式。 if request.method == 'POST': if 'bannedphrase' in request.POST: bannedphraseform = BannedPhraseForm(request.POST, prefix='banned') if bannedphraseform.is_valid(): bannedphraseform.save() expectedphraseform = ExpectedPhraseForm(prefix='expected') elif 'expectedphrase' in request.POST: expectedphraseform = ExpectedPhraseForm(request.POST, prefix='expected') if expectedphraseform.is_valid(): expectedphraseform.save() bannedphraseform …
200 python  django  forms 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.