问题标签 [wicked-gem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
573 浏览

ruby-on-rails - Rails Wicked 多步表单 - 缺少参数或值为空与未经允许的参数

我正在按照本教程使用 Wicked gem 创建一个多步骤表单。每个用户都有一个答案(用于存储一组问题答案的模型),我有一个 QuestionnaireController 可以逐步完成用户将回答并存储在 Answer 中的问题。到目前为止,我只有两个步骤,每个步骤都有一个问题(答案表上的布尔列)。当我逐步回答每个问题时,一切都很完美,但是当我提交时没有值我得到:

参数丢失或值为空:答案

我的代码...

答案.rb:

answers_controller.rb:

问卷_控制器.rb:

step_one.html.erb:

routes.rb (诚然,我试图用这些来掩饰 ID,但请随意羞辱我以正确的方式这样做):

当我选择一个选项并提交时,它会保存到数据库并重定向到下一步,但是如果我在没有选择选项的情况下提交,我会在我期望得到验证错误时得到 param is missing 错误。从服务器日志:

QuestionnaireController#update 处理为 HTML 参数:{"utf8"=>"���", "authenticity_token"=>"J45sG/YIqTaBECgBqNLr9Ys3rJewDK78d/cKHWFHYEIzAaOiTXhgH6evPZKl5LhnSAMnQnA94CXonqriyj0fCQ==", "commit"=>"保存并继续", " =>“step_one”}

我已经尝试了许多潜在的修复,包括从 中删除require(:answer)params.require(:answer).permit(permitted_attributes).merge(current_step: step)这让我得到了我期望的验证错误,但随后不允许保存有效值。在那种情况下,我仍然会在服务器日志中收到以下验证错误:

在 2016-12-08 23:26:14 +0545 由 QuestionnaireController#update 作为 HTML
参数处理 ::1 开始 PUT "/questionnaire/step_one": {"utf8"=>"���", "authenticity_token"= >"RWAHfu0BE82ik6gTChh3nmtuyOUa5j0qiz4H03ejIkRR78jHVnHa5IQsvYAHLiQMqFpDMNrXc/MUV6cs3NldDw==", "answer"=>{"question_one"=>"true"}, "commit"=>"保存并继续", "id"=>"step_one"} ...SQL。 .. 不允许的参数:utf8、_method、authenticity_token、answer、commit、id

非常感谢您帮助新手。

更新:我修改了我的路线以匹配教程(嵌套),认为这可能与它有关(即可能没有得到答案 ID)但我仍然收到 param is missing 错误。

我还尝试在提交之前添加一个 hidden_​​field_tag,如下所示:

但后来我得到:

未定义的方法 `permit' for #

可能是因为当强参数声明需要散列时, hidden_​​field_tag 将 @answer.attributes 作为字符串传递。从服务器:

在 2016-12-12 13:25:19 +0545 由 QuestionnaireController#update 作为 HTML 参数处理: {"utf8"=>"����", "authenticity_token"=>"wlLpKoMvqgyfwB5gyP/qubR4ZpZa6jm9KHeMuiwJTc6IOJZi9PgiSegvF+OzlN09ctEuxuxiAuRs+/B2InRGhA==", "answer"=>"{\"id\"=>46, \"user_id\"=>4, \"question_one\"=>nil , \"question_two\"=>nil, \"percentage_complete\"=>#, \"completed\"=>false, \"created_at\"=>Mon, 12 Dec 2016 02:12:31 EST -05:00 , \"updated_at\"=>2016 年 12 月 12 日星期一 02:12:31 EST -05:00}", "commit"=>"保存并继续", "answer_id"=>"46", "id"= >"第一步”}

请帮忙!

0 投票
0 回答
140 浏览

ruby-on-rails - 保存表单时未定义的方法

我正在使用 Wicked 创建一个多页网络表单。但是,我需要以这种形式使用多个表。我成功地使用了一个,并且已经让第二个表格的页面很好地显示出来。但是,当我尝试保存它时,它会出现此错误:

我现在一直在搞砸它,但没有成功。

因为我有很多代码并且不知道在哪里看,所以我在这个要点中添加了重要的东西:https ://gist.github.com/GroeGIT/f22bd079814df2c0acc8430c4db520a7

谁能帮我解决这个问题,或者 Wicked 不支持具有不同表格的多页表单?

谢谢

楷模

控制器: 查询控制器:

步进控制器:

有问题的观点:

0 投票
0 回答
195 浏览

ruby-on-rails - Rails 错误:删除 gem 后突然出现“参数丢失或值为空”

当我创建一个任务时,会调用一个 ajax 函数来发送特定的参数数据。它工作得很好。然后我安装了“wicked_pdf”和“wkhtmltopdf-binary”。在得知我在 Windows 上使用此工具时遇到问题后,我使用“gem uninstall wicked_pdf/wkhtmltopdf-binary”删除了它们。(我手动删除了所有 wicked_pdf 配置文件)。在此之后,当我创建一个新任务时,我的 Rails 应用程序(Windows)上出现此错误:“参数丢失或值为空:任务”。如果我删除 ajax 代码,它可以正常工作,但不像以前那样。

Ajax(运行良好):

控制器(它正在工作,我从未改变它):

然后在索引视图中,我有这个<%= render 'form', task: @task %>标准表单的部分内容(值并提交,带有创建操作)。有什么问题?我搞砸了 wicked_pdf?

0 投票
1 回答
80 浏览

ruby-on-rails - Rails 创建对象参数 null

创建产品并使用 wicked gem 更新对象后,日志正在吐出

在重定向到参数变为空的步骤上。有人知道为什么吗?

0 投票
1 回答
269 浏览

ruby-on-rails - Cocoon has_one 关联在使用 Wicked Gem - Rails 保存/更新时中断

我已经看到了一些与此类似的问题,但与在 Rails 中使用 Cocoon gem 和 Wicked multi step form Gem 无关。当我有一个 has_many 关联时,表单保存得很好,但是当有一个 has_one 关联(客户端 has_one 医生)时,记录似乎保存然后删除。花了很长时间试图弄清楚这一点,但就是不明白为什么会这样。

客户型号:

医生型号:

查看有问题的部分:

医生字段:

日志:

任何帮助都会非常感谢!!如果您需要其他任何东西,请告诉我。

0 投票
0 回答
71 浏览

ruby-on-rails - 邪恶的gem,如何创建动态模板?

我将灯芯用于多步骤形式,步骤是这样创建的:

到目前为止一切都很好,但是我如何为每个步骤创建模板,因为它们是动态定义的?我没有举任何例子,因为我不知道该怎么做!

0 投票
0 回答
202 浏览

ruby-on-rails - 导轨 | 同一列在表单中多次 | has_man 通过

我有一个创建帖子及其主题的多步骤表单。

主题类具有自引用关联。我parent_id在主题表中有一个列。具有 parent_id: nil 的主题是根主题,具有 parent_id 值的主题是子主题。

这是表格。

表格看起来像这样

名称、描述和选择子主题字段按预期保存值。我想要的是另一个选择输入,它允许用户选择一个主题(父主题)(在上面的表格中注释掉该行)

如何以这种形式多次保留同一列(topic_ids),以便

0 投票
2 回答
1010 浏览

ruby-on-rails - 保存后编辑向导多步骤表单 - Wicked Gem / Rails

我整天都在兜圈子。我有一个使用 Wicked gem 和 Ruby on Rails 的大型多步骤表单。它工作得很好,但我不知道如何回到表单来编辑单个条目。

我试图使能够进入客户展示页面,单击单个客户,然后从那里返回报价以编辑和更新它。由于 Wicked gem 似乎只适用于显示和更新操作,如果我尝试构建标准编辑操作,Wicked 期望在一个步骤上因此不起作用。我阅读了我必须将编辑操作纳入我的显示/更新操作,但我遇到了困难。任何帮助都会非常感谢!

客户端控制器:

报价控制器:

路线:

0 投票
1 回答
563 浏览

javascript - 如何在 AJAX 中使用 Wicked 向导 gem?

我正在使用wicked创建一个多步骤向导。我想使用 AJAX,这样我就可以逐步浏览表单而无需重新加载页面。我在网上找不到有关如何执行此操作的任何信息。有没有人这样做过?

0 投票
0 回答
93 浏览

ruby-on-rails - 在设计中丢失的 Flash 消息重定向到邪恶的向导

这很可能是一个调试问题,但我丢失了 Deviseafter_sign_up_path_for和 Wicked 向导开始之间的一条消息。我尝试了多个位置flash.keep无济于事。

有没有办法打印正在发生的确切重定向,以便我可以找出消息丢失的位置?

这是我的注册控制器中的重定向代码:

设计的create方法包含一个redirect_to调用,我在super上面调用,所以我不能redirect_to after_signup_index_path在上面的块中使用 - 这可以解决问题吗?

这是(浓缩的)邪恶巫师动作: