请原谅我缺乏知识, 最近,我正在学习rails并发现它非常容易和有趣,但仍然有很多东西需要学习。
我提出了管理汽车研讨会的申请:
车主有很多车 汽车有很多次访问 访问属于汽车和所有者。
我希望能够让不同的研讨会用户管理他们的业务,为了使访问和汽车和所有者属于该特定用户,目前的设计是什么,是否所有模型都属于用户?哪里可以读到这个?根据登录用户管理对数据库的访问?
我读到了有关身份验证的内容,但它没有回答我的问题,这是针对我的需求的最佳设计,即仅管理其数据的研讨会。
答案 0 :(得分:2)
您可以检查Devise(https://github.com/plataformatec/devise),这是处理身份验证的最常用方法之一
最后,您将拥有一个用户模型,然后您可以将其视为任何其他模型,例如,如果您只想显示用户的汽车,您可以执行类似int main()
{
ifstream myfile("instructor.csv");
ofstream myfile2("outfile.csv");
string line, lineAboveProfessor;
string dropInstructor;
bool ignore = false, found = false;
cout << "Enter Instructor to drop by name: ";
getline(cin, dropInstructor);
while (getline(myfile, line))
{
if (line == "startInstructor")
{
if (!getline(myfile, line))
break;
ignore = (line == dropProfessor);
if (ignore)
{
found = true;
}
else
{
myfile2 << lineAboveProfessor << endl
<< "startInstructor" << endl
<< line << endl;
}
while (getline(myfile, line))
{
if (!ignore)
myfile2 << line << endl;
if (line == "endProfessor")
{
if (!ignore)
myfile2 << endl;
break;
}
}
lineAboveProfessor = "";
}
else
{
lineAboveProfessor = line;
}
}
/*if (!found)
{
cout << "Not found" << endl;
cin.get();
// client ->sendToClient("Not Found");
}*/
if (myfile1.eof() && myfile2.good())
{
myfile.close();
myfile2.close();
remove("instructor.csv");
rename("outfile.csv", "instructor.csv");
}
else
{
myfile.close();
myfile2.close();
remove("outfile.csv");
}
}
的操作并限制某些控制器操作仅在current_user.cars
等时发生。我建议检查他们的文档,因为大多数用例都很容易解释。
答案 1 :(得分:1)
Devise可用于处理身份验证,Pundit或CanCanCan可用于授权。我建议您查看这些内容,有很多教程可以回答您的问题。