मैं अपनी प्रोफ़ाइल के बारे में जानकारी प्रदर्शित करने के लिए Django Admin इंटरफ़ेस प्राप्त करने का प्रयास कर रहा हूं। यह मेरे सभी उपयोगकर्ताओं को प्रदर्शित करता है लेकिन कोई प्रोफाइल जानकारी नहीं। मुझे पूरा यकीन नहीं है कि इसे कैसे काम पर लाया जाए।Django - उपयोगकर्ता, उपयोगकर्ता प्रोफाइल, और व्यवस्थापक
मैं एक त्वरित गूगल खोज के बाद इस कोड को मिला:
from auth.models import UserProfile
from django.contrib import admin
from django.contrib.auth.models import User
from django.contrib.auth.admin import UserAdmin
admin.site.unregister(User)
class UserProfileInline(admin.StackedInline):
model = UserProfile
class UserProfileAdmin(UserAdmin):
inlines = [UserProfileInline]
admin.site.register(User, UserProfileAdmin)
हालांकि, मुझे नहीं लगता कि यह है कि यह काम किया। जब मैं व्यवस्थापक पृष्ठ में लॉग इन करता हूं, तो मैं उपयोगकर्ता, समूह और साइटें देखता हूं। मैं उपयोगकर्ताओं को क्लिक करता हूं और मैं अपने सभी उपयोगकर्ताओं की एक सूची देखता हूं, लेकिन किसी भी प्रोफ़ाइल का कोई संकेत नहीं। किसी उपयोगकर्ता पर क्लिक करने से मुझे उस उपयोगकर्ता के बारे में जानकारी मिलती है, लेकिन फिर भी कोई प्रोफ़ाइल जानकारी नहीं होती है।
from django.db import models
from django.contrib.auth.models import User
class UserProfile(models.Model):
company = models.CharField(max_length=30)
user = models.ForeignKey(User, unique=True)
और मेरी पंजीकरण कोड:
यदि यह मदद मिलेगी, यहाँ अपने मॉडल घोषणा है
def register(request):
if request.method == 'POST':
uf = UserForm(request.POST)
upf = UserProfileForm(request.POST)
if uf.is_valid() and upf.is_valid():
user = uf.save()
userprofile = upf.save(commit=False)#need to get the user profile object first
userprofile.user = user #then set the user to user
userprofile.save() #then save to the database
return HttpResponseRedirect('/auth/login/')
else:
uf = UserForm()
upf = UserProfileForm()
return render_to_response('register.html', dict(userform=uf,userprofileform=upf),context_instance=RequestContext(request))
क्या आपने व्यवस्थापक के लिए कोड को 'admin.py' में एक नए ऐप के पैकेज में रखा था और इसे' INSTALLED_APPS' 'में जोड़ा था? –
व्यवस्थापक के लिए कोड मेरे "auth" एप्लिकेशन के अंदर admin.py में है। ऑथ INSTALLED_APPS में है। मैंने अपना ऑथ प्रोफाइल मॉड्यूल भी सही ढंग से सेट किया है। – JPC
auth एक बुरे नाम की तरह लगता है क्योंकि आप एक संघर्ष कर सकते हैं। –