小编Tho*_*hom的帖子

如何将多个参数传递给sorted()的方法'key'?

在网站上,我试图根据用户的相对位置对商店列表进行排序.让我解释.

一家商店看起来像这样:

class Shop(models.Model):
    latitude = models.DecimalField(max_digits=9, decimal_places=6)
    longitude = models.DecimalField(max_digits=9, decimal_places=6)
Run Code Online (Sandbox Code Playgroud)

我在会话中获得用户的位置.

request.session['user_latitude']
request.session['user_longitude']
Run Code Online (Sandbox Code Playgroud)

所以现在我得到了一个商店列表,我想对它们进行排序.所以我尝试了这个:

def distance_of_the_shop(shop):
    # compute the distance between the shop and the user and return it
    return computed_distance

sorted(shop_list, key=distance_of_the_shop)
Run Code Online (Sandbox Code Playgroud)

问题很简单,如何将多个参数传递给方法distance_of_the_shop

python sorting django

5
推荐指数
1
解决办法
3634
查看次数

如何使用python将图片字节包含到JSON中?(编码问题)

我想将图片字节包含在JSON中,但我遇到了编码问题:

import urllib
import json

data = urllib.urlopen('https://www.python.org/static/community_logos/python-logo-master-v3-TM-flattened.png').read()
json.dumps({'picture' : data})
Run Code Online (Sandbox Code Playgroud)

UnicodeDecodeError:'utf8'编解码器无法解码位置0的字节0x89:无效的起始字节

我不知道如何处理这个问题因为我处理图像,所以我对这个编码问题有点困惑.我正在使用python 2.7.有人能帮帮我吗?:)

python encoding byte json image

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

如何确保 Django Rest Framework 中至少有一个嵌套序列化器实例可供创建?

一些代码而不是长解释:

我的主序列化器OrderSerializer和嵌套序列化器OffersSerializer

class OffersSerializer(serializers.Serializer):
    id = serializers.IntegerField(min_value=0)
    quantity = serializers.IntegerField(min_value=0)

class OrderSerializer(serializers.Serializer):
    offers = OffersSerializer(many=True, required=True)
Run Code Online (Sandbox Code Playgroud)

这样我就可以像这样发布数据:

{
    "offers": []
}
Run Code Online (Sandbox Code Playgroud)

这对于 DRF 有效,但我想检查是否至少有一个报价,例如:

{
    "offers": [{"id": 1, "quantity": 200}]
}
Run Code Online (Sandbox Code Playgroud)

如何确保至少有一份报价?

谢谢

django serialization django-rest-framework

5
推荐指数
1
解决办法
1434
查看次数

Django独特的文件名方法

我正在寻找 Django 在上传文件时用来生成唯一文件名的方法。

例如,如果我test.csv在同一目录中上传一个调用了两次的文件,则第一个文件将另存为test.csv,第二个文件将另存为test_2.csv. 我已经尝试找到 Django 如何管理它,但我只发现django.utils.text.get_valid_filename哪个可能有用,但这不是我正在寻找的......

我已经看到其他带有随机命名解决方案的 主题,这不是我在这里寻找的:)我真的很想了解 Django 如何管理这个问题。

python django filenames

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

如何从模型的外键角度显示Django admin中的相关对象?

我得到了两个由外键链接的 Django 模型:

class Author(models.Model):
    ...

class Book(models.Model):
    author = models.ForeignKey(Author)
Run Code Online (Sandbox Code Playgroud)

请考虑下面的管理示例(我想做相反的事情):

from django.contrib import admin
from my_app.models import Author, Book

class BookInline(admin.TabularInline):
    model = Book

class AuthorAdmin(admin.ModelAdmin):
    inlines = [
        BookInline,
    ]

admin.site.register(Author, AuthorAdmin)
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我们可以在管理中看到所有作者,以及每个作者的书。

现在,我想反过来。在管理中为每本书输入 en 条目,并在书籍详细信息中显示作者信息(可以是只读的)。我尝试了下面的解决方案,但显然它不起作用:

from django.contrib import admin
from my_app.models import Author, Book

class AuthorInline(admin.TabularInline):
    model = Author

class BookAdmin(admin.ModelAdmin):
    inlines = [
        AuthorInline,
    ]

admin.site.register(Book, BookAdmin)
Run Code Online (Sandbox Code Playgroud)

Django 引发了一个错误:

<class 'my_app.admin.AuthorInline'>: (admin.E202) 'my_app.Author' has no ForeignKey to 'my_app.Book'.

你知道怎么做吗 ?

更多背景:

  • Django 1.11
  • 我想将 Book …

python django django-admin

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