我正在开展一个项目。我有两个模型,一个是带有角色的用户(设计),另一个是商家。所有应用程序用户都存储在与该角色关联的用户表中。 对于商家部分。我遇到了一些问题。 我接受商家注册为请求。因此,要发送商家请求申请,用户将仅提供其电子邮件地址,并且应用程序将检查用户表以查看该电子邮件地址是否已注册。如果已经注册,它将发送一条消息,例如"电子邮件地址已被使用,并建议注册用户"否则它会将电子邮件地址存储在会话中(或其他)或呈现商家请求表单。用户将提交申请和申请。所有输入字段和电子邮件地址都存储在商家表中。
我试过但不能。所以,请建议我如何完成这项任务。
def create
if params[:email] == User.find_by_email(params[:email])
flash[:notice] = "Email address already in use!"
redirect_to new_merchant_path
else
render 'form'
end
end
答案 0 :(得分:0)
看来你很亲密。
自
fun initialize(activity: Activity, vararg settings: settings) =
JavaClass.initialize(activity, *settings)
在数据库中找到用户对象,如果不是
,则返回User.find_by_email(params[:email])
nil
会为你效劳。 如果需要在视图上显示用户,则应将结果存储在实例变量中。
def create
if User.find_by_email(params[:email])
flash[:notice] = "Email address already in use!"
redirect_to new_merchant_path
else
render 'form'
end
end
答案 1 :(得分:0)
我认为你想做的就是这个。
def create
if (@user = User.find_by(email: params[:email]))
flash[:notice] = "Email address already in use!"
redirect_to new_merchant_path
else
render 'form'
end
end
然后您可以在form.html.erb
答案 2 :(得分:0)
@defining(player.rank) { rank =>
@defining(player.id) { id =>
@if(rank == "Great") {
<span key="@id">@rank</span>
}
@if(rank == "Good") {
<span key="@id">@rank</span>
}
<select key="@id">
@for((key, value) <- model.getAllRankings()){
<option id="@key" @if(rank == value) {selected}>@value</option>
}
</select>
}
}
这条线并没有做你想象的那样。您可以通过参数[:email]在数据库中查找用户,但是您要将整个用户对象与params [:email]进行比较。
if params[:email] == User.find_by_email(params[:email])