Tôi có một biểu mẫu hiển thị khác nhau tùy thuộc vào thông số được gọi.Đường ray: Truyền tham số có hiển thị: hành động?
Ví dụ:
testsite.local/users/new?type=client
Vì vậy, nếu type
là a
hoặc b
, hình thức sẽ hiển thị các lĩnh vực khác nhau.
Vấn đề của tôi là khi biểu mẫu được điền không chính xác, vì nếu người dùng không thể lưu một cách chính xác, nó sẽ hiển thị biểu mẫu với các thông báo lỗi mặc định, nhưng cũng không có tham số của tôi.
testsite.local/users/new
Làm cách nào tôi có thể gọi cho hành động render
và chuyển bất kỳ thông số này nào được đặt cho nó? Vì vậy mà tôi vẫn có thể giữ các thông báo lỗi tích hợp của tôi về lý do tại sao biểu mẫu không thể bị sứt mẻ đúng cách VÀ nó có phải là hình thức đúng không?
Dưới đây là create
hành động của tôi:
def create
@user = User.new(params[:user])
roles = params[:user][:assigned_roles]
if @user.save
update_user_roles(@user,roles)
if current_user.is_admin_or_root?
flash[:message] = "User \"#{@user.username}\" created."
redirect_to users_path
else
flash[:message] = "Congrats! You're now registered!"
redirect_to app_path
end
else
render :action => 'new'
end
end
Bạn sẽ làm gì khi muốn xác định điều tương tự cho cả hành động 'create' và' update'? – Victor