Questions tagged «django»

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


8
Django Rest Framework-如何在ModelSerializer中添加自定义字段
我创建了一个,ModelSerializer并希望添加一个不属于我的模型的自定义字段。 我在此处找到了添加其他字段的说明,并尝试了以下操作: customField = CharField(source='my_field') 当我添加此字段并调用我的validate()函数时,则此字段不是attr字典的一部分。attr包含所有指定的模型字段,除了额外的字段。因此,我无法在覆盖的验证中访问此字段,可以吗? 当我将此字段添加到字段列表中时,如下所示: class Meta: model = Account fields = ('myfield1', 'myfield2', 'customField') 然后我得到一个错误,因为customField它不是我的模型的一部分-正确的是因为我只想为此序列化器添加它。 有什么方法可以添加自定义字段?

6
将Django的FileField设置为现有文件
我在磁盘上有一个现有文件(例如/folder/file.txt),在Django中有一个FileField模型字段。 当我做 instance.field = File(file('/folder/file.txt')) instance.save() 它将文件另存为file_1.txt(下次是_2,等等)。 我知道为什么,但是我不想要这种行为-我知道我想要与该字段关联的文件确实在那里等着我,我只想让Django指向它。 怎么样?
89 python  django  file 

9
如何在Django模板的自定义模板过滤器中添加多个参数?
这是我的自定义过滤器: from django import template register = template.Library() @register.filter def replace(value, cherche, remplacement): return value.replace(cherche, remplacement) 这是我尝试在模板文件中使用它导致错误的方式: {{ attr.name|replace:"_"," " }} {{ attr.name|replace:"_" " " }} {{ attr.name|replace:"_":" " }} {{ attr.name|replace:"cherche='_', remplacement=' '" }} 我查看了django的文档和书籍,但只发现了使用单个参数的示例……甚至可能吗?

6
没有尾部斜杠的Django URL不会重定向
我在两个不同的计算机上有两个应用程序。在计算机A上,urls.py文件中的行如下所示: (r'^cast/$', 'mySite.simulate.views.cast') 该网址对mySite.com/cast/和都适用mySite.com/cast。但是在计算机BI上,有一个类似的url写成: (r'^login/$', 'mySite.myUser.views.login') 由于某种原因,计算机B上的url mySite.com/login/可以正常工作,但mySite.com/login会挂起并且不会mySite.com/login/像计算机A上那样直接返回。这两个url.py文件对我来说都一样。

1
在{%include%}标记Django中为子模板分配变量
我有这个代码(这没有给我预期的结果) #subject_content.html {% block main-menu %} {% include "subject_base.html" %} {% endblock %} #subject_base.html .... .... <div id="homework" class="tab-section"> <h2>Homework</h2> {% include "subject_file_upload.html" %} </div> 子模板: #subject_file_upload.html <form action="." method="post" enctype="multipart/form-data">{% csrf_token %} {{ form.as_p }} <input type="submit" value="submit"> </form> 和我的看法 #views.py @login_required def subject(request,username, subject): if request.method == "POST": …

5
将models.py拆分为几个文件
我正在尝试将models.py我的应用拆分为几个文件: 我的第一个猜测是这样做: myproject/ settings.py manage.py urls.py __init__.py app1/ views.py __init__.py models/ __init__.py model1.py model2.py app2/ views.py __init__.py models/ __init__.py model3.py model4.py 这不起作用,然后我发现了这个问题,但是在此解决方案中,我仍然遇到问题,当我运行时,出现python manage.py sqlall app1类似以下内容: BEGIN; CREATE TABLE "product_product" ( "id" serial NOT NULL PRIMARY KEY, "store_id" integer NOT NULL ) ; -- The following references should be added but …

3
为什么Django的prefetch_related()仅适用于all()而不适用于filter()?
假设我有这个模型: class PhotoAlbum(models.Model): title = models.CharField(max_length=128) author = models.CharField(max_length=128) class Photo(models.Model): album = models.ForeignKey('PhotoAlbum') format = models.IntegerField() 现在,如果我想高效地查看相册的子集中的照片子集。我这样做是这样的: someAlbums = PhotoAlbum.objects.filter(author="Davey Jones").prefetch_related("photo_set") for a in someAlbums: somePhotos = a.photo_set.all() 这只会执行两个查询,这正是我所期望的(一个查询获取相册,然后一个查询,例如“ SELECT * IN photos WHERE photoalbum_id IN()”。 一切都很棒。 但是,如果我这样做: someAlbums = PhotoAlbum.objects.filter(author="Davey Jones").prefetch_related("photo_set") for a in someAlbums: somePhotos = a.photo_set.filter(format=1) …
89 django  orm  filter  prefetch 

5
Django信号与覆盖保存方法
我无法解决这个问题。现在我有一些看起来像这样的模型: def Review(models.Model) ...fields... overall_score = models.FloatField(blank=True) def Score(models.Model) review = models.ForeignKey(Review) question = models.TextField() grade = models.IntegerField() 一个Review是有几个“分数”,总体分数是分数的平均值。保存评论或分数后,我需要重新计算total_score平均值。现在,我正在使用重写的保存方法。使用Django的信号分配器会有好处吗?

1
Django管理员ManyToMany内联“没有ForeignKey to”错误
我正在将Django管理员设置为以下模型: class Quote(models.Model): author = models.CharField(max_length=100) quote = models.CharField(max_length=1000) tags = models.ManyToManyField('Tag') class Tag(models.Model): name = models.CharField(max_length=100) 使用以下代码: class TagInline(admin.TabularInline): model = Tag class QuoteAdmin(admin.ModelAdmin): list_display = ('author', 'quote') inlines = (TagInline,) class TagAdmin(admin.ModelAdmin): pass admin.site.register(Quote, QuoteAdmin) admin.site.register(Tag, TagAdmin) 尝试查看管理页面以添加时Quote,页面显示错误提示<class 'quotes.models.Tag'> has no ForeignKey to <class 'quotes.models.Quote'>。在添加内联之前,这没有发生。有什么问题?如何正确将aTag作为内联添加? (我花了20分钟的时间来寻找答案;我发现了类似的问题,但他们的答案都对我没有用。)

8
为什么要在Google App Engine上使用Django?
在研究Google App Engine(GAE)时,很明显,使用Django在基于GAE的Python中进行开发非常流行。我一直在网上搜索有关使用Django的成本和收益的信息,以了解为什么它如此受欢迎。虽然我已经找到了许多有关如何在GAE 上运行Django的资料以及各种实现方法,但是我还没有找到任何比较分析来说明为什么 Django比使用Google提供的webapp框架更可取。 显而易见,对于在Django中具有现有技能的开发人员(毫无疑问是大多数Python网络开发人员)或在Django中具有现有代码的开发人员(在其中使用GAE更像是移植练习),为什么在GAE上使用Django很有用。但是,我的团队正在评估GAE是否可用于全新项目,而我们现有的经验是使用TurboGears,而不是Django。 当BigTable库已替换Django的ORM,会话和身份验证已更改且Django的模板(如果需要)而无需使用整个Django堆栈时,很难确定Django为什么对开发团队有利。 最后,很明显,如果我们以后想离开GAE并需要一个平台来出走,使用Django确实具有提供“退出策略”的优势。 我会非常感谢您指出为什么在GAE上使用Django比使用webapp更好的方法。我也对Django完全没有经验,因此详细介绍适用于GAE的较小功能和/或便利性对我来说也很有价值。

6
如何访问Django模板中的用户个人资料?
我正在使用来存储一些其他的每用户信息AUTH_PROFILE_MODULE。 我们可以使用Django模板访问用户,{{ request.user }}但是由于只能通过函数访问配置文件,因此如何访问配置文件中的字段user.get_profile()? 确实需要每次将配置文件显式传递到模板中吗?



8
将我的signals.py文件保留在Django项目中的正确位置
根据我正在阅读的Django文档,似乎signals.py在app文件夹中是一个不错的起点,但是我面临的问题是,当我为创建信号pre_save并尝试从模型中导入类时,它与import在我的模型中。 # models.py from django.contrib.auth.models import User from django.db import models from django.utils.translation import gettext as _ from signals import * class Comm_Queue(CommunicatorAbstract): queue_statuses = ( ('P', _('Pending')), ('S', _('Sent')), ('E', _('Error')), ('R', _('Rejected')), ) status = models.CharField(max_length=10, db_index=True, default='P') is_html = models.BooleanField(default=False) language = models.CharField(max_length=6, choices=settings.LANGUAGES) sender_email = models.EmailField() …

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.