因此django聲稱組是「將標籤和權限應用於多個用戶的通用方式」。我的問題是這段代碼是什麼樣的,這段代碼在哪裏?Django:如何編寫羣組以及這些羣體的居住地點?
具體來說,是否需要組和類型的模型?任何幫助揭露這些工作如何將是非常有益的。
PS:如何將組應用到當前登錄的用戶?
感謝您的幫助。
因此django聲稱組是「將標籤和權限應用於多個用戶的通用方式」。我的問題是這段代碼是什麼樣的,這段代碼在哪裏?Django:如何編寫羣組以及這些羣體的居住地點?
具體來說,是否需要組和類型的模型?任何幫助揭露這些工作如何將是非常有益的。
PS:如何將組應用到當前登錄的用戶?
感謝您的幫助。
組解釋都不過是models
。
class Player(models.Model):
name = models.CharField(max_length=100)
age = models.PositiveIntegerField()
上面,Player
model
是增加玩家。現在,如果你想組的球員進入球隊,你會做這樣的事情如下:現在
class Team(models.Model):
players = models.ManyToManyField(Player)
team_name = models.CharField(max_length=100)
,你只需要創建一個團隊和不斷增加的玩家吧。很簡單,對吧?
好吧,直到現在。比方說,今天有4場比賽,這意味着8支球隊打這些比賽。在今天參加比賽的球員中,有15人受傷,10人被禁止參加下一場比賽。所以,如果你想爲受傷和禁止的玩家羣體,你會做類似如下:
class Injured(models.Model):
players = models.ManyToManyField(Player)
class Banned(models.Model):
players = models.ManyToManyField(Player)
就是這樣。
現在,問題是爲什麼你會使用組?
當然,沒有必要寫組模型,你也有其他的選擇。
class Player(models.Model):
name = models.CharField(max_length=100)
age = models.PositiveIntegerField()
team = models.CharField(max_length=100)
is_injured = models.BooleanField(default=False)
is_banned = models.BooleanField(default=False)
現在想: 15名球員受傷,這意味着你將不得不更新15名球員is_injured
到True
。 8人被禁止,這意味着你必須將8名球員的is_banned
更改爲True
。另外,你必須一次又一次地寫下每個球員球隊的名字。這真的非常耗時。現在你看到羣的重要性嗎?
此代碼在哪裏?
在您的models.py
文件中。
根據OP提供的報價,我認爲他們可能指的是內置的auth' groups' https://docs.djangoproject.com/en/dev/topics/auth/default/#permissions-and-authorization – dm03514
用戶組是'django.contrib.auth'的一部分。 如果您將它與您的用戶模型一起使用(Django 1.4及更低版本中的任何普通用戶或Django 1.5或更高版本中的「PermissionsMixin」),那麼您將在數據庫中找到相應的表格:
每個用戶得到的所有權限設置
見django.contrib.aut更多信息集團(auth_groups) 。
將用戶添加到組this post
https://docs.djangoproject.com/en/dev/topics/auth/default/#permissions-and-authorization – dm03514