2

与えられたスクリーンショットを使用して、システムに既に存在する別のモデルからユーザー追加ページに選択ドロップダウンを追加したいと考えています。どうすればいいですか?ジャンゴ管理者

ここに私のアカウント/models.pyがあります

from django.db import models
from django.contrib.auth.models import User
from django.db.models.signals import post_save
from entities.models import Company
from entities.models import Venue

class UserProfile(models.Model):
    user = models.OneToOneField(User)
    company = models.ForeignKey(Company)
    venue = models.ForeignKey(Venue)

    def __unicode__(self):
        return 'Test'

ここに私のアカウント/ admin.pyがあります

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
from entities.models import Company
from entities.models import Venue

class CompanyInline(admin.StackedInline):
    model = Company

class VenueInline(admin.StackedInline):
    model = Venue

class MyUserAdmin(UserAdmin):
    inlines = [
        CompanyInline,
        VenueInline,
    ]

admin.site.unregister(User)
admin.site.register(User, MyUserAdmin)

上記のコードを追加してユーザー追加ページに戻ると、次のエラーが発生します。

管理者ユーザー追加エラー

Company モデルと Venue モデルの両方にデータが入力されています。

どんな助けでも大歓迎です。

ありがとう、マーク

4

1 に答える 1

2

Arg、これは私が何かを投稿するたびに起こります。コードをもう一度調べて、問題を見つけます。

とにかく、同じ問題を抱えている他の不幸な人のために、account/admin.pyを次のように変更しました

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
from account.models import UserProfile

class UserProfileInline(admin.TabularInline):
    model = UserProfile

class MyUserAdmin(UserAdmin):
    inlines = [
        UserProfileInline,
    ]

admin.site.unregister(User)
admin.site.register(User, MyUserAdmin)
于 2012-07-07T18:14:39.887 に答える