में उपयोगकर्ता मॉडल से कनेक्ट करें त्वरित (शायद मूर्ख) प्रश्न। यह मेरी साइट का प्रवाह है: उपयोगकर्ता लॉग इन करता है और एक कस्टम व्यवस्थापक पृष्ठ पर रीडायरेक्ट किया जाता है। इस व्यवस्थापक पृष्ठ पर उनके पास 'प्रोफ़ाइल' बनाने की क्षमता है। मैं उनके उपयोगकर्ता डेटा के साथ बनाई गई प्रोफाइल को जोड़ना चाहता हूं जैसे कि 1 उपयोगकर्ता 1 प्रोफाइल से संबद्ध है।Django
किसी कारण निम्न काम नहीं कर रहा के लिए (बस
UserAdmin.Models
from django.db import models
from django.contrib.auth.models import User
class Profile(models.Model):
username = models.ForeignKey(User)
firstname = models.CharField(max_length=200)
lastname = models.CharField(max_length=200)
email = models.EmailField(max_length=200)
def __unicode__(self):
return self.username
UserAdmin.Views
def createprofile(request):
user = User.objects.get(id=1)
profile = Profile(username=user, firstname='Joe', lastname='Soe', email='[email protected]')
profile.save()
मैं मिलती रहती है संबद्ध करने के लिए कोशिश कर रहा है: तालिका useradmin_profile में उपयोगकर्ता नाम नहीं है ame_id
कोई विचार? की सराहना की।
संपादित करें:
मेरी db नष्ट कर दिया गया और एक ताजा syncdb भाग गया, करने के लिए उपयोगकर्ता नाम = models.OneToOneField (उपयोगकर्ता) बदल दिया है। अब मैं प्राप्त कर रहा हूं "u'superuser" असाइन नहीं कर सकता: "प्रोफ़ाइल। उपयोगकर्ता नाम" एक "उपयोगकर्ता" उदाहरण होना चाहिए।
हम्म, धन्यवाद। अब मुझे मिल रहा है: "यू 'जॉन असाइन नहीं कर सकता": "प्रोफाइल। उपयोगकर्ता नाम" एक "उपयोगकर्ता" उदाहरण होना चाहिए। (जॉन एक उपयोगकर्ता है। उपयोगकर्ता नाम) – user1059105
कोड संपादित किया ... इसे आज़माएं। यद्यपि आपको एक नया सिंकडीबी करना होगा। – Scalamoosh
हम्म। ठीक है कि एक ताजा सिंकडीबी के साथ कोशिश की। जब मैं प्रिंट a.first_name जहां एक = उपयोगकर्ता का उपयोग करने का प्रयास करता हूं तो खोल एक खाली प्रिंटिंग कर रहा है। जब मैं प्रोफ़ाइल ऑब्जेक्ट तक पहुंचने का प्रयास करता हूं और Profile.objects.all() करता हूं तो मुझे पूर्ण_नाम() के बजाय मुद्रित [] मिलता है। कोई विचार? –
user1059105