質問

フォーラムアプリケーションを作成しているとしましょう。グループでフォーラムレベルの許可システムを設計する方法を理解しています。

i.e。グループマッピングを行うフォーラムを作成し、ユーザーをグループに割り当てて、特定のフォーラムへのアクセス権を付与します。

行レベルのアクセス許可(またはフォーラム用語では投稿レベル)を許可するようにアクセス許可を調整するにはどうすればよいですか。

正しい解決策はありません

他のヒント

既に説明したのと同様の方法で行います。さらにいくつかの結合が必要になります。あなたがそのような構造を持っているとしましょう(私はそれを一般化してコードの量を減らすために意図的に制約を避けました):

CREATE TABLE ForumPost (
PostID int,
ForumID int,
PostText varchar(255)
);

CREATE TABLE ForumUser (
ForumUserID int,
ForumUserName varchar(255),
NumofPosts int
);

CREATE TABLE ForumGroups (
ForumGroupID int,
ForumGroupName varchar(255)
)

CREATE TABLE ForumGroupMembership (
ForumUserID int,
ForumGroupID int
)

CREATE TABLE ForumPermissions (
ForumID int,
ForumGroupID int,
MinPosts int
)

その後、コンテンツを適切に制限するために、いくつかの結合を行うことができます。

SELECT FPost.PostID, FPost.ForumID, FPost.PostText
FROM ForumPost FPost
  JOIN ForumPermissions FPerm
    ON FPost.ForumID = FPerm.ForumID
  JOIN ForumGroupMembership FGM
    ON FPerm.ForumGroupID = FGM.ForumGroupID
  JOIN ForumUser FUser
    ON FUser.ForumUserID = FGM.ForumUserID
WHERE FUser.NumOfPosts >= FPerm.MinPosts
  AND FPost.PostID = <Some Number>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top