मैं सभी दस्तावेज में गया, मैं भी आईआरसी चैनल (बीटीडब्ल्यू एक महान समुदाय) गया और उन्होंने मुझे बताया कि मॉडल बनाने और विकल्पों को सीमित करने के लिए संभव नहीं है क्षेत्र जहां 'वर्तमान उपयोगकर्ता' विदेशीकी में है। मैं एक उदाहरण के साथ यह समझाने की कोशिश करेंगे:मॉडल सीमा_choices_to = {'उपयोगकर्ता': उपयोगकर्ता}
class Project(models.Model):
name = models.CharField(max_length=100)
employees = models.ManyToManyField(Profile, limit_choices_to={'active': '1'})
class TimeWorked(models.Model):
project = models.ForeignKey(Project, limit_choices_to={'user': user})
hours = models.PositiveIntegerField()
पाठ्यक्रम कि कोड नहीं 'उपयोगकर्ता वस्तु है क्योंकि वहाँ काम नहीं करता है के
, लेकिन यह मेरा विचार था और मैं' उपयोगकर्ता वस्तु भेजने की कोशिश कर रहा था 'मौजूदा उपयोगकर्ता के पास मौजूद विकल्पों को सीमित करने के लिए मॉडल में, मैं उन परियोजनाओं को देखना नहीं चाहता हूं जहां मैं नहीं हूं।
यदि आप मेरी मदद कर सकते हैं या मुझे कोई सलाह दे सकते हैं तो बहुत बहुत धन्यवाद, मैं नहीं चाहता कि आप सभी ऐप लिखें, बस एक टिप कि उससे कैसे निपटें। मैं अपने सिर में इस के साथ 2 दिन है और मैं यह समझ नहीं :(
अद्यतन: समाधान यहाँ है:। http://collingrady.wordpress.com/2008/07/24/useful-form-tricks-in-django/ एक मॉडल के लिए request.user
भेजने
मैं इसे आजमाने जा रहा हूं। – AbeEstrada
यह एक बुरा विचार है ... थ्रेडलोकल्स के साथ आपको हैक करने का कारण यह है क्योंकि यह सत्यापन * मॉडल * – Anentropic
सहमत नहीं होना चाहिए। दो साल पहले यह एक अच्छा विचार की तरह लग रहा था –