我试图实现对谁创建使用记录的用户自动更新的ModelAdmin save_model描述这里.我无法弄清楚如何绕过kwarg错误"save()得到一个意外的关键字参数'force_insert'".
admin.py
from myapp.myproj.models import Activity
from django.contrib import admin
class ActivityAdmin(admin.ModelAdmin):
exclude = ('cruser',)
list_display = ('activity_nm', 'activity_desc', 'startdt', 'enddt','upddt','crdt')
def save_model(self, request, obj, form, change):
if not change:
obj.cruser = request.user
obj.save()
admin.site.register(Activity, ActivityAdmin)
Run Code Online (Sandbox Code Playgroud)
该文件指出,
"save_model方法给出了HttpRequest,模型实例,ModelForm实例和基于它是添加还是更改对象的布尔值."
这是自动的还是我需要从视图中传递它?如果这不是问题,那还有什么呢?
编辑:更改代码以匹配示例.
我有一个未通过is_valid()测试的表格.我创建了一个相同的表单,通过相同的数据输入传递测试.不知道为什么一个人会通过,一个人会失败.
以下是表格:
choices = ( (1,'Yes'),(0,'No'),
)
class ActivitySaveForm(forms.Form):
name = forms.CharField(
label=u'Activity Name',
widget=forms.TextInput(attrs={'size': 64})
)
url = forms.URLField(
label=u'URL',
widget=forms.TextInput(attrs={'size': 64})
)
desc = forms.CharField(
label=u'Describe it',
widget=forms.TextInput(attrs={'size': 250})
)
created = forms.DateField(
label=u'Date Entered',initial=datetime.date.today,
)
priority = forms.CharField(
label=u'priority: 1-5',
widget=forms.TextInput(attrs={'size': 1})
)
difficulty = forms.CharField(
label=u'How hard is it? 1-5',
widget=forms.TextInput(attrs={'size': 1})
)
done = forms.TypedChoiceField(choices=choices, widget=forms.RadioSelect, coerce=int
)
tags = forms.CharField(
label=u'Tags',required=False,
widget=forms.TextInput(attrs={'size': 64})
)
#def __init__(self, *args, **kwargs):
#super(CircuitForm, self).__init__(*args, **kwargs)
#for …Run Code Online (Sandbox Code Playgroud) 我想在Cognos 8中查询元数据以查找所有报告和列名称.如果可能,我想包括列定义.
我可以使用Cognos报告执行此操作,还是需要查询某些存储库?
谢谢.
auto-update ×1
cognos ×1
cognos-8 ×1
django ×1
django-admin ×1
django-forms ×1
python ×1
reporting ×1