我有以下表格:用户、员工、联系人。员工和联系人 belongs_to 用户和用户 has_one 联系人或 has_one 员工。创建新联系人或员工时,我让他们的模型创建一个新用户。
我希望联系人(最终用户)能够编辑自己的联系人记录。所以,我有以下链接:
<li><%= link_to "Edit Profile", edit_contact_path(current_user.contact) %></li>
这带来了他们的记录,他们可以编辑它。但是,我不希望他们能够用另一个 contacts.id 重新输入 url 并编辑他们的记录。
我尝试了以下方法,但并没有阻止它们:
<% if current_user.contact = @contact %>
<%= render 'form' %>
<% end %>
仅供参考 - 我还允许管理员使用以下代码编辑联系人记录:
<% if current_user.admin? %>
<%= render 'form' %>
<% end %>
进一步解释 - 网址如下所示:
http://localhost:5000/contacts/4/edit
如果你用 6 代替 4,它仍然会带来那个记录。
谢谢您的帮助!