je suis nouveau à django et j'utilise la version 1.11
j'ai plusieurs modèles certains liés à des clés étrangères et certains avec une relation oneToOne.
par exemple l'utilisateur et les modèles de profil, je voudrais ajouter dans les champs de formulaire de profil de l'utilisateur formulaire
comment?
Pour le oneToOne, j'ai un modèle d'admin avec un champ oneToOne lié au modèle d'utilisateur. mais pas seulement admin, j'ai plusieurs types d'utilisateur (admin, écrivain, commetator, ...) chacun dans un modèle différent et en créant un type je crée également son utilisateur lié, ainsi quand j'accède au formulaire d'auteur dans l'admin je crée un administrateur, mais je veux aussi avoir le champ modèle de l'utilisateur afin que je crée à la fois de la forme de l'écrivain
dans adminadmin-à-dire: le modèle d'administration, je voudrais ajouter les champs de l'utilisateur sous la forme montrant dans le modèle d'administration
ajouter des champs au modèle d'un autre lié avec OneToOneField ou ForeignKey relation
from django.contrib import admin
from .models import User, Admin
class UserInline(admin.StackedInline):
model = User
fields = ['username', 'first_name', 'last_name']
class AdminAdmin(admin.ModelAdmin):
model = Admin
list_display = ['getUsername']
inlines = [UserInline]
def getUsername(self, obj):
return obj.user.username
getUsername.short_description = "Nom d'utilisateur"
admin.site.register(Admin, AdminAdmin)
ce code génère l'erreur ": (admin.E202)" common.User "n'a pas ForeignKey à" common.Admin "."
merci pour votre réponse, mais cela n'a pas fonctionné J'ai l'erreur "Champ (s) inconnu (s) (utilisateur__nom_utilisateur) spécifié pour le profil .Contrôle les champs/fieldsets/exclut les attributs de la classe Pro fileAdmin. " – leila
D'autres informations pourraient vous être utiles. 1) Où avez-vous mis ce code? 2) Où avez-vous besoin de domaines connexes? (Admin ou votre propre vue). 3) Pour quelle classe avez-vous besoin de ces modèles connexes? ('models.Model',' admin.ModelAdmin', 'forms.ModelForm'?) –
s'il vous plaît vérifier le poste – leila