小编brs*_*gic的帖子

Python将新项添加到字典中

我想在python中将项添加到现有字典中.例如,这是我的字典:

default_data = {
            'item1': 1,
            'item2': 2,
}
Run Code Online (Sandbox Code Playgroud)

我想添加新项目,以便:

default_data = default_data + {'item3':3}
Run Code Online (Sandbox Code Playgroud)

怎么做到这一点?

python dictionary items

529
推荐指数
3
解决办法
147万
查看次数

"CSRF令牌丢失或不正确",同时在Django中通过AJAX发布参数

我尝试发布参数

 jQuery.ajax(
        {
            'type': 'POST',
            'url': url,
            'contentType': 'application/json',
            'data': "{content:'xxx'}",
            'dataType': 'json',
            'success': rateReviewResult 
        }
    );
Run Code Online (Sandbox Code Playgroud)

但是,Django返回Forbidden 403. CSRF verification failed. Request aborted. 我正在使用,'django.middleware.csrf.CsrfViewMiddleware'并且无法在不影响安全性的情况下找到如何防止此问题.

django jquery django-csrf

61
推荐指数
6
解决办法
8万
查看次数

查询Django中的前x个元素

我有两个模型

class JobTitle(models.Model):
     name = models.CharField(max_length=1000)

class Employer(models.Model): 
     jobtitle = models.ForeignKey(JobTitle,unique=False,null=True)
Run Code Online (Sandbox Code Playgroud)

如你所见,一个雇主可能有很多职位.我试图询问前五名雇主的职位数量最多的雇主

我怎么能得到这个是Django?

谢谢

django django-models

30
推荐指数
2
解决办法
3万
查看次数

Django admin list_display short_description

在django admin中,如果我们为list_display定义一个元素,我们可以为该short_description字段分配为

class PersonAdmin(admin.ModelAdmin):
    list_display = ('upper_case_name','age')

    def upper_case_name(self, obj):
        return ("%s %s" % (obj.first_name, obj.last_name)).upper()
    upper_case_name.short_description = 'Name'
Run Code Online (Sandbox Code Playgroud)

但是,如果我想改变年龄领域的简短描述怎么办?我希望将Age字段的标题显示为Person's Age相反Age.当然,我可以upper_case_name为每个字段编写自定义函数,但我认为这是一个糟糕的解决方案.

你能建议我做任何简单的方法吗?谢谢

django admin short

21
推荐指数
1
解决办法
8939
查看次数

模板中的Django反向查询

我有这样的模特

class Blog(models.Model):
    name = models.CharField(max_length=100)
    tagline = models.TextField()

    def __unicode__(self):
        return self.name

class Entry(models.Model):
    blog = models.ForeignKey(Blog)
    headline = models.CharField(max_length=255)
Run Code Online (Sandbox Code Playgroud)

我想列出页面中的所有博客.我写了一个这样的观点

def listAllBlogs(request):
    blogs= Blog.objects.all()
    return object_list(
        request,
        blogs,
        template_object_name = "blog",
        allow_empty = True,
        )
Run Code Online (Sandbox Code Playgroud)

并且能在视野中显示博客的标语

{% extends "base.html" %}
{% block title %}{% endblock %}
{% block extrahead %}

{% endblock %}

{% block content %}
     {% for blog in blog_list %}
          {{ blog.tagline }}
     {% endfor %}
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

但我想表明,这样的事情,blog__entry__name但我不知道我怎么能在模板中实现这一点.此外,博客中可能没有条目.如何在模板中检测?

谢谢

django reverse

16
推荐指数
2
解决办法
9397
查看次数

Django查询与distinct和order_by

我有两个型号

class Employer(models.Model):
     name = models.CharField(max_length=300, blank=False)
     id = models.IntegerField()
     status = models.IntegerField()
     eminence = models.IntegerField(null=False,default=4)

class JobTitle(models.Model)
     name = models.CharField(max_length=300, blank=False)
     employer = models.ForeignKey(Employer,unique=False,null=True)
     activatedate = models.DateTimeField(default=datetime.datetime.now)
Run Code Online (Sandbox Code Playgroud)

我需要所有雇主按照其职位名称最后激活的顺序.

Employer.objects.filter(status=1).order_by('eminence','-jobtitle__activatedate')
Run Code Online (Sandbox Code Playgroud)

这个查询给了我想要的东西,但如果雇主有多个职位,它会返回重复的雇主.

我会用distinct()但在Django文件中我发现了

*order_by()调用中使用的任何字段都包含在SQL SELECT列中.当与distinct()一起使用时,这有时会导致意外结果.如果您按相关模型中的字段进行排序,则这些字段将添加到选定的列中,否则可能会使重复的行显示为不同.由于额外的列不会出现在返回的结果中(它们仅用于支持排序),因此有时会返回非独特的结果.*

虽然他们解释了我的问题没有指定解决方案.

可以给我一个建议,如何在不破坏API稳定性的情况下按我的雇主列表进行分组?

django group-by distinct django-models

16
推荐指数
1
解决办法
7602
查看次数

Django admin list_display换行符

我尝试在Django的admin端列表显示中显示带有换行符的文本.

class MyModelAdmin(admin.ModelAdmin):
    list_display = ('example')

def example(self,obj):
    return 'TYPE : %s \n RATE : %s \n FAMILY %s'
Run Code Online (Sandbox Code Playgroud)

但是,它显示没有新行,如TYPE : xxx RATE : yyy FAMILY zzz.

我怎么能在Django管理员中这样做?

django django-admin

10
推荐指数
2
解决办法
3304
查看次数

Django管理用户的内联模型

我有模特儿

class Employer(models.Model):
    create_user = models.ForeignKey(User,unique=False,null=True, related_name='%(class)s_user_create')
    update_user = models.ForeignKey(User,unique=False,null=True, related_name='%(class)s_user_update')
Run Code Online (Sandbox Code Playgroud)

我想Employer在Django管理面板中查看用户的详细信息时列出所有对象.

我写过类似的东西

admin.py

class EmployerInline(admin.TabularInline):
    model = Employer

class UserAdmin(admin.ModelAdmin):
    inlines = [
               EmployerInline
    ]

admin.site.register(UserAdmin)
Run Code Online (Sandbox Code Playgroud)

但它给了我错误 'MediaDefiningClass' object is not iterable

在查找用户详细信息时,如何列出由特定用户创建的雇主?

谢谢

django django-admin django-admin-filters

8
推荐指数
1
解决办法
6760
查看次数

wget连接由peer重置

我尝试使用wget从我们的Web服务器访问www.indeed.com,但它引发了"Connection peer by peer"错误.

wget www.indeed.com

--2013-02-05 03:03:12--  (try: 3)  http://www.indeed.com/
Connecting to www.indeed.com|208.43.224.140|:80... connected.
HTTP request sent, awaiting response... Read error (Connection reset by peer) in headers.
Retrying.
Run Code Online (Sandbox Code Playgroud)

它之前的工作是因为我正在使用他们的API一段时间,但现在我甚至没有到达他们的公共网站.

这可能是什么问题?确实可以将他们的黑名单添加到服务器的IP或与我的防火墙等相关吗?

有没有办法调试/跟踪问题所在?

connection udp tcp wget

8
推荐指数
1
解决办法
3万
查看次数

Django FileField默认文件

我有一个模型,其中包含FileField如下

class Employer(models.Model):
        logo = models.FileField(storage=FileSystemStorage(location=settings.MEDIA_ROOT), upload_to='logos')
Run Code Online (Sandbox Code Playgroud)

问题是如何在此文件字段中添加"{{MEDIA_ROOT}}/logos/anonymous.jpg"等默认文件?

django django-models default-value filefield

7
推荐指数
1
解决办法
1万
查看次数