我试图让 2 个按钮在相同形式的导轨中工作。我有一个带有添加用户和注册按钮的登录表单。我的控制器中有 2 个方法已经处理了这 2 个不同的请求。
但是,我阅读了有关使用附加参数进行解析以确定调用哪个按钮的建议。对于此解决方案,您不需要使用另一个控制器方法进行一定程度的间接解析吗?我读到让一个控制器调用另一个控制器不是好的 MVC 做法。在这种情况下,在 MVC 控制器类中调用另一个方法是一种不好的做法吗?
我的表格:
<%= form_tag("users/delegate", :method=>"post") do %>
<%= label_tag(:user, "Username:") %>
<%= text_field_tag(:user) %>
<br/><br/>
<%= label_tag(:password, "Password:") %>
<%= password_field_tag(:password) %>
<br/><br/>
<%= submit_tag "Login", :name=>'login' %>
<%= submit_tag "Add User" %>
<% end %>
另外,如何将 post 请求中的参数传递给其他方法?我基本上做到了,但没有通过论点。我需要将参数传递给其他方法吗?是全局变量吗?
def delegate
if params[:login]
login_post()
else
add_post()
end
end
def login_post
user = params[:user]
password = params[:password]
errCode = UserModel.login(user,password)
if (errCode>0)
count = errCode
errCode = 1
end
final_obj = {:errCode=> errCode, :count=>count}
respond_to do |format|
format.json { render :json=>final_obj, :status=>200}
end
end