我有多个模型,其中多个 DecimalField 代表货币,例如 100.34 EUR。
我的目标是在管理列表视图中显示货币,如图所示
http://i.imgur.com/XKEQFp9.png
但是,我无法为每个货币领域找到一种方法。
我尝试创建一个自定义 MoneyField,从 DecimalField 继承并更改unicode表示,但它没有用。
我也尝试过https://github.com/jakewins/django-money但我没有运气。
查了一下django admin的源码,终于找到了问题所在:
在 django.admin.contrib.admin.util.py 的 display_for_field 函数中,它检查该值是否是 DecimalField 的实例。如果是这种情况,它会像十进制数一样显示它。
elif isinstance(field, models.DecimalField):
return formats.number_format(value, field.decimal_places)
Run Code Online (Sandbox Code Playgroud)
这是有道理的,但它阻止我在管理中显示欧元符号/文本。
我怎么解决这个问题?
我知道我可以简单地为每个字段使用一种方法,将格式化的值显示为字符串,但我想知道是否有 DRYer 方法。
我们有一个拥有多个用户的couchapp应用程序和一个复杂的权限系统.我们的模型有两种:Foo和bar.
用户拥有自己的Foo和Bar的管理员权限,并且可以被授予查看,更改和删除其他人的Foo和bar的权限.
例:
用户Sabrina有这些模型:
Foo {
_id: 1
}
Foo {
_id: 2
}
Bar {
_id:1
}
Bar {
_id:2
}
Run Code Online (Sandbox Code Playgroud)
当然真正的模型是更大的文档.
她希望让Giulia能够阅读她的Foos,并对她的第一个酒吧进行读写访问.她还希望朱莉娅不能看到她的第二个酒吧.
我们如何在couchdb中建模这种权限?
这是我们正在使用的解决方案,但它似乎很复杂,我们想知道是否有一个更简单的解决方案:
我们有一些角色选择
{username}:admin:可以读取,写入,删除与用户相关的每个数据库上的所有内容
{username}:foos:read:可以读取与用户相关的foos数据库中的每个文档:可以在foos数据库{username}:foos:write中写入与用户相关的
每个文档
{username}:{bar}:read:can读取与用户相关的Bar数据库
{username}:{bar}:write:可以编写与用户相关的Bar数据库
当Sabrina注册到应用程序时,我们创建了一个新的sabrina-foos数据库,并且我们向用户Sabrina提供了这个角色sabrina:admin.
该sabrina-foos数据库与创建_security文档授权访问角色sabrina:admin,sabrina:foos:read,sabrina:foos:write.
该sabrina-foos数据库与验证功能,它允许写访问角色创建sabrina:admin,sabrina:foos:write.
当Sabrina决定让Giulia看到她的抱负时,我们给了Giulia这个角色 sabrina:foos:read
当Sabrina创建一个名为"Bar 1"的新Bar时,我们会创建一个新sabrina-bar_1数据库.
该sabrina-bar_1数据库与_security文件授权访问角色创建sabrina:admin,sabrina:bar_1:read,sabrina:bar_1:write
该sabrina-bar_1数据库与验证功能,它允许写访问角色创建sabrina:admin, …