これは私が現在のトランク(改訂:11804)で行った方法です。 Natimの解決策は私のために働いていませんでした。 admin.py
で
:
forms.py
で
class ProfileAdmin(admin.ModelAdmin):
form = ProfileForm
def save_model(self, request, obj, form, change):
obj.user.first_name = form.cleaned_data['first_name']
obj.user.last_name = form.cleaned_data['last_name']
obj.user.save()
obj.save()
:
class ProfileForm(forms.ModelForm):
first_name = forms.CharField(max_length=256)
last_name = forms.CharField(max_length=256)
def __init__(self, *args, **kwargs):
super(ProfileForm, self).__init__(*args, **kwargs)
try:
self.fields['first_name'].initial = self.instance.user.first_name
self.fields['last_name'].initial = self.instance.user.last_name
except User.DoesNotExist:
pass
class Meta:
fields = ['first_name', 'last_name', ...etc.]
「メディア」とは、「メタ」とします。 – Daishiman
プロファイルがまだ作成されていない場合、この解決策は機能しません。私はそれのための修正を持っていないが、私はそれを投稿します。 –
ここで説明する 'User'モデルで' post_save'シグナルを使用すると、これは起こりません:http://docs.djangoproject.com/ja/dev/topics/auth/#storing-additional-information-about-ユーザー – Natim