0
我想在django 1.3中創建兩個用戶類型。我子類AUTH_PROFILE_MODULE具有以下models.py:訪問Django 1.3中的子類用戶配置文件模塊
class Member(models.Model):
ROLE_CHOICES = (
(0, 'Guide'),
(1, 'Operator'),
)
user = models.ForeignKey(User, unique=True)
location = models.CharField(max_length=60)
role = models.IntegerField(choices=ROLE_CHOICES)
class Guide(Member):
bio = models.TextField(blank=True)
experience = models.TextField(blank=True)
image = models.ImageField(blank=True, upload_to='images')
fileupload = models.FileField(blank=True, upload_to='files')
def __unicode__(self):
return self.user.username
def get_absolute_url(self):
return '/profiles/guides/%s' % self.user.username
class Operator(Member):
bio = models.TextField(blank=True)
image = models.ImageField(blank=True, upload_to='images')
def __unicode__(self):
return self.user.username
def get_absolute_url(self):
return '/profiles/operators/%s' % self.user.username
我使用泛型類爲本次,並能得到ListView控件爲指南和操作模式我不能得到的DetailView上班工作。我的views.py如下:
class GuideDetailView(DetailView):
model = Guide
context_object_name = 'guide'
template_name = 'members/guide_detail.html'
class GuideListView(ListView):
model = Guide
context_object_name = 'guides'
template_name = 'members/guide_list.html'
任何想法可能會丟失什麼?
我按照你的建議添加了queryset = Guide.objects.all(),但仍然得到一個錯誤,即DetailView需要一個slug或pk。任何想法如何利用通過url爲slug值傳入的用戶名。 – thesteve 2011-05-27 23:08:42
你必須在你的urlconf中添加一個參數,例如:url(r'^ $',GuideDetailView.as_view(),{'pk':1}), – jazz 2011-05-27 23:18:55
我編輯了我的帖子,你應該能夠解決你的問題覆蓋get方法的問題。 – jazz 2011-05-28 07:58:48