Questions tagged «django»

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

12
DRF:使用嵌套序列化程序进行简单的外键分配?
使用Django REST Framework,标准的ModelSerializer将允许通过将ID作为整数发布来分配或更改ForeignKey模型关系。 从嵌套序列化程序中获取此行为的最简单方法是什么? 注意,我只是在谈论分配现有数据库对象,而不是嵌套创建。 过去,我在序列化程序中使用附加的“ id”字段以及自定义create和update方法来解决这个问题,但这对我来说似乎是一个简单而频繁的问题,我很想知道最好的方法。 class Child(models.Model): name = CharField(max_length=20) class Parent(models.Model): name = CharField(max_length=20) phone_number = models.ForeignKey(PhoneNumber) child = models.ForeignKey(Child) class ChildSerializer(ModelSerializer): class Meta: model = Child class ParentSerializer(ModelSerializer): # phone_number relation is automatic and will accept ID integers children = ChildSerializer() # this one will not …

3
Django FileField:如何仅返回文件名(在模板中)
我的type模型中有一个字段FileField。这给了我一个type的对象File,它具有以下方法: File.name:文件名,包括来自的相对路径 MEDIA_ROOT。 我想要的是类似“ .filename”的东西,它只会给我文件名而不是路径,例如: {% for download in downloads %} <div class="download"> <div class="title">{{download.file.filename}}</div> </div> {% endfor %} 这会给像 myfile.jpg


4
编写__init__函数以在Django模型中使用
我正在尝试为__init__我的一个模型编写函数,以便可以通过执行以下操作创建对象: p = User('name','email') 当我编写模型时,我有: def __init__(self, name, email, house_id, password): models.Model.__init__(self) self.name = name self.email = email 这样可以正常工作,我可以将对象保存到数据库中,但是当我这样做时User.objects.all(),除非我拿出__init__函数,否则它不会拉任何东西。有任何想法吗?


5
django模板系统,在模型内部调用函数
我想从我的模型中的模板调用一个函数,例如: class ChannelStatus(models.Model): .............................. .............................. def get_related_deltas(self,epk): mystring = "" if not self.get_error_code_delta(epk): return mystring else: for i in self.get_listof_outage(): item = i.error_code.all() for x in item: if epk == x.id: mystring= mystring +" "+str(i.delta()) return mystring 当我想从模板中调用它时:假设在渲染时,我将channel_status_list传递为 channel_status_list = ChannelStatus.objects.all() {% for i in channel_status_list %} {{ i.get_related_deltas(3) }} …

12
django.db.utils.ProgrammingError:关系已经存在
我正在尝试为新的django项目设置表(也就是说,数据库中不存在这些表);django版本是1.7,数据库后端是PostgreSQL。该项目的名称是crud。迁移尝试的结果如下: python manage.py makemigrations crud Migrations for 'crud': 0001_initial.py: - Create model AddressPoint - Create model CrudPermission - Create model CrudUser - Create model LDAPGroup - Create model LogEntry - Add field ldap_groups to cruduser - Alter unique_together for crudpermission (1 constraint(s)) python manage.py migrate crud Operations to perform: Apply …

1
Django-如何使变量可用于所有模板?
我想知道如何将变量传递给我的所有模板,而无需在views.py文件中的每个方法上重复相同的代码? 在下面的示例中,我想使类别(类别对象的数组)可用于Web应用程序中的所有模板。 Eg: I would like to avoid writing 'categories':categories on every method. Is it possible? 一种查看方法 def front_page(request): categories = Category.objects.all() if is_logged_in(request) is False: return render_to_response('users/signup.html', {'is_logged_in': is_logged_in(request), 'categories':categories}, context_instance=RequestContext(request)) else: return render_to_response('users/front_page.html', {'is_logged_in': is_logged_in(request), 'categories':categories},context_instance=RequestContext(request)) 另一种查看方法 def another_view_method(request): categories = Category.objects.all() return render_to_response('eg/front_page.html', {'is_logged_in': is_logged_in(request), 'categories':categories},context_instance=RequestContext(request))

2
django-rest-framework 3.0在嵌套序列化程序中创建或更新
使用django-rest-framework 3.0并具有以下简单模型: class Book(models.Model): title = models.CharField(max_length=50) class Page(models.Model): book = models.ForeignKey(Books, related_name='related_book') text = models.CharField(max_length=500) 并给出此JSON请求: { "book_id":1, "pages":[ { "page_id":2, "text":"loremipsum" }, { "page_id":4, "text":"loremipsum" } ] } 如何编写嵌套的序列化程序来处理此JSON,并为page给定的每个JSONbook创建一个新页面或更新(如果存在)。 class RequestSerializer(serializers.Serializer): book_id = serializers.IntegerField() page = PageSerializer(many=True) class PageSerializer(serializers.ModelSerializer): class Meta: model = Page 我知道用实例化序列化程序instance会更新当前序列化程序,但是我应该如何在create嵌套序列化程序的方法中使用它呢?

6
Django模型形式的必填字段
我有一个表格,其中的两个字段根据需要在我不希望出现时也出现。这是来自models.py的表格 class CircuitForm(ModelForm): class Meta: model = Circuit exclude = ('lastPaged',) def __init__(self, *args, **kwargs): super(CircuitForm, self).__init__(*args, **kwargs) self.fields['begin'].widget = widgets.AdminSplitDateTime() self.fields['end'].widget = widgets.AdminSplitDateTime() 在实际的电路模型中,字段的定义如下: begin = models.DateTimeField('Start Time', null=True, blank=True) end = models.DateTimeField('Stop Time', null=True, blank=True) 我的views.py在这里: def addCircuitForm(request): if request.method == 'POST': form = CircuitForm(request.POST) if form.is_valid(): form.save() …
73 python  django  forms  model  widget 


3
Django自定义模板标签中的访问请求
我在myapp_extras.py中的代码: from django import template register = template.Library() @register.inclusion_tag('new/userinfo.html') def address(): address = request.session['address'] return {'address':address} 在“ settings.py”中: TEMPLATE_CONTEXT_PROCESSORS =( "django.core.context_processors.auth", "django.core.context_processors.debug", "django.core.context_processors.i18n", "django.core.context_processors.media", 'django.core.context_processors.request' ) 但我得到一个错误: TemplateSyntaxError at /items/ Caught an exception while rendering: global name 'request' is not defined Original Traceback (most recent call last): File "C:\Python25\lib\site-packages\django\template\debug.py", line …

8
Django 1.3或更低版本上Django Admin中的自定义过滤器
如何向django admin(模型仪表板右侧显示的过滤器)添加自定义过滤器?我知道很容易包含基于该模型字段的过滤器,但是像这样的“计算”字段呢: class NewsItem(models.Model): headline = models.CharField(max_length=4096, blank=False) byline_1 = models.CharField(max_length=4096, blank=True) dateline = models.DateTimeField(help_text=_("date/time that appears on article")) body_copy = models.TextField(blank=False) when_to_publish = models.DateTimeField(verbose_name="When to publish", blank=True, null=True) # HOW CAN I HAVE "is_live" as part of the admin filter? It's a calculated state!! def is_live(self): if self.when_to_publish is …

4
Django:测试页面是否已重定向到所需的URL
在我的django应用中,我有一个身份验证系统。因此,如果我没有登录并尝试访问某些个人资料的个人信息,则会被重定向到登录页面。 现在,我需要为此编写一个测试用例。我得到的浏览器的响应是: GET /myprofile/data/some_id/ HTTP/1.1 302 0 GET /account/login?next=/myprofile/data/some_id/ HTTP/1.1 301 0 GET /account/login?next=/myprofile/data/some_id/ HTTP/1.1 200 6533 我该如何编写测试?这是我到目前为止所拥有的: self.client.login(user="user", password="passwd") response = self.client.get('/myprofile/data/some_id/') self.assertEqual(response.status,200) self.client.logout() response = self.client.get('/myprofile/data/some_id/') 接下来可能会发生什么?

10
在Django之外使用Django数据库层?
我已经在Django中创建了一个不错的数据库,并且希望通过网站内容之外的一些python脚本进行交互,因此我很好奇是否可以在Django之外使用Django数据库API网站,如果有的话,有没有人知道如何做?Google并没有为此带来很多成功。
73 python  mysql  django 

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.