从按钮上的控制器检查数据单击?

时间:2017-09-14 19:59:07

标签: ruby-on-rails ruby ruby-on-rails-5

我是Ruby的新手,但我创建了一个类似测验的网站,用户可以回答多项选择题。每个问题都分配给一个特定的测验,因此每个测验可能有多个问题。我很难过,试着看看所选择的选择是否正确。所有答案都使用question_id引荐来源和correct布尔值保存。

我觉得它与link_to有关,但我无法弄明白。

这是我正在访问的控制器:

def check
        puts "//////// //////// /////// #{@givenAnswer}"
        puts "//////// //////// /////// #{@correctAnswer}"
end

这里尽可能接近我的工作,但我收到了一个Url错误:

<%= link_to "#{@ans.content}", {:controller=>:pages,:action=>:check, :givenAnswer=>@ans.content, :correctAnswer=>params["correct#{@q.id}"]}, :method=>:get, :class => "btn" %>

上面给出了UrlGenerationError

@q@ans都是由脚本中的循环创建的。它们被正确定义。

任何帮助将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

  1. 根据您为link_to提供的语法,您缺少关闭'}'之前:方法选项。
  2. 只要页面控制器不在某个命名空间下,它就应该生成正确的链接,不应该给出url错误。
  3. 在检查操作中,correctAnswer和givenAnswer将以params哈希方式提供,而不是直接以@givenAnswer和@correctAnswer提供。请在检查操作中查看params hash。