2013-03-22 66 views
1

我有一套人,我想聯繫每個人的個人信息和事情列表的卡片,這個列表沒有固定大小(它可能有一個或多個字段), admin負責填寫此列表。django模型 - 可以管理添加變量到表?

我如何賦予管理員權限,通過管理頁面添加額外的字段(不是編碼)?是否有可能或是否必須使用固定大小的列表?

class Admin(models.Model): 
     first_name = models.CharField(max_length=50) 
     last_name = models.CharField(max_length=50) 
     birth_date = models.DateField(blank=True, null=True) 
     address = models.CharField(max_length=100, blank=True, null=True) 
     city = models.CharField(max_length=50, blank=True, null=True) 
     phone_number = models.CharField(max_length=20, blank=True, null=True) 
     email = models.EmailField(blank=True, null=True) 

     def __unicode__(self): 
      return u'%s %s' % (self.first_name, self.last_name) 


class Person(models.Model): 
    first_name = models.CharField(max_length=50) 
    last_name = models.CharField(max_length=50) 
    birth_date = models.DateField(blank=True, null=True) 
    address = models.CharField(max_length=100, blank=True, null=True) 
    city = models.CharField(max_length=50, blank=True, null=True) 
    phone_number = models.CharField(max_length=20, blank=True, null=True) 
    email = models.EmailField(blank=True, null=True) 
    admin = models.ForeignKey(Admin, blank=True, null=True) 

    def __unicode__(self): 
     return u'%s %s' % (self.first_name, self.last_name) 


class Card(models.Model): 
    id_number = models.IntegerField(default=0) 
    person = models.OneToOneField(Person, primary_key=True) 

    def __unicode__(self): 
     return unicode(self.id_number) 



class Things_to_do(models.Model): 
    name = models.CharField(max_length=50) 
    repetitions = models.IntegerField(default=0, blank=True, null=True) 
    series = models.IntegerField(default=0, blank=True, null=True) 
    executions = models.IntegerField(default=0, blank=True, null=True) 
    rest_time = models.IntegerField(default=0, blank=True, null=True) 
    card = models.ForeignKey(Card, blank=True, null=True) 

    def __unicode__(self): 
     return unicode(self.name) 
+0

我不明白...爲什麼一個'Card'附加到'Things_to_do'和一個'Person'附加到那個。另外爲什麼'Admin'和'Person'基本上是相同的模型?我覺得你的設計是這裏的問題,而不是管理頁面......如果你能更好地解釋它,我可以嘗試提供幫助。 – Ngenator 2013-03-24 00:28:48

+0

每個人都有一張卡片,裏面充滿了管理員要做的事情列表。管理員必須能夠創建新的卡片,修改現有的卡片並將其關聯到個人。每個人都可以登錄,只能看到他/她自己的卡片。你能建議一個更好的設計嗎?謝謝 – avafab 2013-03-24 08:58:29

回答

相關問題