我需要创建 3 种类型的用户
I need to create 3 types of users
我想创建三种类型的用户:
- 是管理员(提出问题的人)
- 是回答用户
- 是可以向 2 用户提问的附加用户。
我想尝试后端,用 FireBase 构建它。
但是我不知道如何构建数据结构,因为我习惯于构建自己的 Apis,而且我看到 firebase 没有为用户类型制定方案的选项。
我将用于客户端,反应本机我不知道我需要写什么功能,所以它会识别 3 种类型的用户,我在网上找到的所有东西都是旧的组件结构类 我正在尝试使用新方法,
所以如果你能帮我解决这个问题,因为我没有太多解决此类问题的经验。
这是一个案例研究。
在常见的应用中,不同的用户类型具有不同的角色和权限。
在你的案例研究中。创建具有 ADMIN
、ASK
或 ANSWER
角色之一的用户。
除了该用户角色之外,您可以稍后在您的应用逻辑中向该用户授予权限和特权。
import { getAuth, createUserWithEmailAndPassword } from "firebase/auth";
import { doc, setDoc, getFirestore } from "firebase/firestore";
const db = getFirestore();
async function saveUser(userId, { email, firstName, lastName, role }) {
await setDoc(doc(db, "users", userId), { email, firstName, lastName, role });
}
/** User role should be either ADMIN,ASK or ANSWER **/
function signup({ email, password, firstName, lastName, role }) {
const auth = getAuth();
createUserWithEmailAndPassword(auth, email, password)
.then((userCredential) => {
// Signed in
const user = userCredential.user;
const userId = user.uid;
// Save new user to database
saveUser(userId, { email, firstName, lastName, role });
// ...
})
.catch((error) => {
const errorCode = error.code;
const errorMessage = error.message;
// ..
});
}
除了该用户角色之外,您可以稍后在您的应用程序业务逻辑中向该用户授予权限和特权。
我想创建三种类型的用户:
- 是管理员(提出问题的人)
- 是回答用户
- 是可以向 2 用户提问的附加用户。
我想尝试后端,用 FireBase 构建它。 但是我不知道如何构建数据结构,因为我习惯于构建自己的 Apis,而且我看到 firebase 没有为用户类型制定方案的选项。
我将用于客户端,反应本机我不知道我需要写什么功能,所以它会识别 3 种类型的用户,我在网上找到的所有东西都是旧的组件结构类 我正在尝试使用新方法,
所以如果你能帮我解决这个问题,因为我没有太多解决此类问题的经验。
这是一个案例研究。
在常见的应用中,不同的用户类型具有不同的角色和权限。
在你的案例研究中。创建具有 ADMIN
、ASK
或 ANSWER
角色之一的用户。
除了该用户角色之外,您可以稍后在您的应用逻辑中向该用户授予权限和特权。
import { getAuth, createUserWithEmailAndPassword } from "firebase/auth";
import { doc, setDoc, getFirestore } from "firebase/firestore";
const db = getFirestore();
async function saveUser(userId, { email, firstName, lastName, role }) {
await setDoc(doc(db, "users", userId), { email, firstName, lastName, role });
}
/** User role should be either ADMIN,ASK or ANSWER **/
function signup({ email, password, firstName, lastName, role }) {
const auth = getAuth();
createUserWithEmailAndPassword(auth, email, password)
.then((userCredential) => {
// Signed in
const user = userCredential.user;
const userId = user.uid;
// Save new user to database
saveUser(userId, { email, firstName, lastName, role });
// ...
})
.catch((error) => {
const errorCode = error.code;
const errorMessage = error.message;
// ..
});
}
除了该用户角色之外,您可以稍后在您的应用程序业务逻辑中向该用户授予权限和特权。