我正在使用django-uniform并使用一些统一的功能,我正在寻找一种直接从表单声明添加css类的方法(对于独立小部件).
(作为奖励,这里我的可重复使用的只读自制mixin片段...)
from django import forms
def _get_cleaner(form, field):
def clean_field():
return getattr(form.instance, field, None)
return clean_field
class UniformROMixin(forms.BaseForm):
"""
UniformROMixin, inherits to turn some fields read only
- read_only = list of field names.
"""
def __init__(self, *args, **kwargs):
super(UniformROMixin, self).__init__(*args, **kwargs)
if hasattr(self, "read_only"):
if self.instance and self.instance.pk:
for field in self.read_only:
self.fields[field].widget.attrs['readonly'] = True
self.fields[field].widget.attrs['class'] += "readOnly"
# here I would like to set css class of the label
# created from the self.fields[field].label string
setattr(self, "clean_" …Run Code Online (Sandbox Code Playgroud) 嗨我发现在postgres数据库中,我们无法配置默认的重音敏感度(在旧邮件交换机上).
有没有办法让_icontains对特殊字符(é,è,à,ç,ï)不敏感,或者我必须使用postgres regex用_iregex替换两边(ç-> c,é-> e ...) ?
编辑:这个问题很旧,并且在1.8之前为django的用户保留.对于那些使用最新django版本的人来说,这里是新的方式:https://docs.djangoproject.com/en/dev/ref/contrib/postgres/lookups/#std : fieldlookup-unaccent
我有一个带有optionnal参数的url:
urlpatterns = patterns(
'my_app.views',
url('schedule/(?P<calendar_id>\d+)/(?:month(?P<relative_month>[\+,\-]\d)/)$',
'attribute_event',name='attribute_event')
)
Run Code Online (Sandbox Code Playgroud)
在我的模板中,我有一个链接:
{% url attribute_event calendar.id %}
Run Code Online (Sandbox Code Playgroud)
但我有一个错误,说这些arg不能反转url.我必须使用2个url正则表达式和url名称吗?!
我试图找到一些事件的累积持续时间,'start'和'end'字段都是django.db.models.DateTimeField字段.
我想做的应该是这样写的:
from django.db.models import F, Sum
from my.models import Event
Event.objects.aggregate(anything=Sum(F('start') - F('end')))
# this first example return:
# AttributeError: 'ExpressionNode' object has no attribute 'split'
# Ok I'll try more SQLish:
Event.objects.extra(select={
'extra_field': 'start - end'
}).aggregate(Sum('extra_field'))
# this time:
# FieldError: Cannot resolve keyword 'extra_field' into field.
Run Code Online (Sandbox Code Playgroud)
我不能agreggate(Sum)单独开始和结束然后在python中减去因为DB不能Sum DateTime对象.
没有原始sql的好方法吗?
我正在制作带插件的django网站.每个插件都是一个简单的django应用程序,取决于主要的(或甚至其他插件).
虽然应用程序/插件之间的依赖关系对我来说很清楚,但是通过猴子修补添加列(作为插件特定模型的外键)应该是可以接受的,以避免主应用依赖于插件.
由于主应用程序已经具有南方管理功能,因此具有所有插件,因此我无法在这些模块的设置中更改迁移目录.
那么,我如何从其他南方应用程序中修补南方应用程序模型?
ps:我是法国人,如果你发现任何错误,可以随意纠正我的问题,或者如果我不清楚的话,可以随便提问.
编辑:我在django迁移中添加了关于我现在如何做的答案.
我正在寻找最优雅的方式来通知我的库的用户他们需要一个特定的 unix 命令来确保它可以工作......
什么时候是我的 lib 引发错误的最佳时机:
以及您应该如何检测命令丢失 ( if not commands.getoutput("which CommandIDependsOn"): raise Exception("you need CommandIDependsOn"))。
我需要建议。
我的django应用程序正在使用多帧reportlab pdf报告,我想添加一些条形码/ qr代码.
我遇到的问题是我添加到布局的每个对象都必须是Flowable.所以问题是将PlotArea(QrCodeWidget的母类)强制转换为Flowable.
如果我们在这里有一个答案,那么如果我们将QrCodeWidget添加为,我们就可以获得错误消息
AttributeError: QrCodeWidget instance has no attribute 'getKeepWithNext'
Run Code Online (Sandbox Code Playgroud) 此功能用于我列出搜索结果的视图中.在我的搜索表单中,我有一些ModelChoiceFields可以通过外键进行搜索.平时的工作流程是指把我们当前的搜索更加精确,所以禁用了很多不相关的结果,我想删除,如果没有其他的搜索参数改变这将返回任何结果条目.
我正在使用对象查询集来限制某些下拉列表中的命题.我使用这些下拉列表来过滤外键我的对象列表.
我的filter函数参数现在是一个Objects查询集:
class MySearchForm(Form):
things = ModelChoiceField(queryset=models.Thing.objects.none())
def __init__(self, *args, **kwargs):
my_objects_queryset = kwargs.pop('my_objects_queryset',models.Thing.objects.all())
super(MySearchForm, self).__init__(*args, **kwargs)
self.fields['things'].queryset = \
models.Thing.objects.filter(object__in=my_objects_queryset).distinct()
Run Code Online (Sandbox Code Playgroud)
我的问题是如何从现有的query_set中删除'where close'.在这里,我想从my_objects_queryset中删除哪里关闭哪个过滤器thing = ForeignKey(models.Thing)
可能吗?
类似于列出我们的查询集的所有过滤器并在运行中编辑/删除它们的方法.
django ×6
python ×4
command ×1
distutils ×1
django-forms ×1
django-south ×1
django-urls ×1
packaging ×1
platypus ×1
postgresql ×1
qr-code ×1
reportlab ×1