问题标签 [form-with]

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 回答
43 浏览

ruby-on-rails - Ruby on rails,无法通过 Web 界面更新数据库

我正在编写一个在后台使用 SQL Lite 数据库的图书库系统。通过控制台,我可以毫无问题地添加和更新书籍。而且我已经提出了一个可以添加新书的视图,并且效果很好。

但是现在我正在尝试创建一个可以更新/编辑书籍的视图,但它不起作用。

我收到一条错误消息,因为它试图在没有 book 的情况下从我的 book_controller.rb 调用 edit 方法:id。有人知道为什么它不使用 : 调用该方法id吗?

错误

路线.rb

book_controller.rb

编辑.html.erb

index.html.erb

强文本

0 投票
1 回答
92 浏览

ruby-on-rails - country_select gem 抛出“NoMethodError”,未定义的方法 `country_select' 用于#

我是 Rails 新手,但我认为我正在遵循使用这个 gem 的每一步。但是,我收到了 NoMethodError。我的步骤:我gem install country_select -v 3.1.1在终端运行。我停止了我的服务器,运行了捆绑安装,重新启动了我的服务器。我将该方法添加到我的代码中。我尝试将它添加到我的 gem 文件中,但这导致了一个不同的错误,阻止了我的 Rails 服务器运行(有关详细信息,请参见下文)。根据github doc,通过终端安装似乎就足够了。

似乎与我有相同问题的唯一另一个stackoverflow问题说它是通过重新启动服务器来解决的,但我已经尝试了几次,但它没有奏效。如果有人可以在这里帮助我,我将非常感激!

注意:由于我的原始问题已经得到解答并且问题已经发展,我在这里发布了一个关于我的终端问题的新问题:country_select gem 导致“Could not find i18n_data-0.10.0 in any sources”错误

_form.html.erb

显示.html.erb

这是来自终端的完整错误:

当我将 gem 添加到我的 gemfile 并运行 bundle install 时,我无法重新启动服务器,因为我收到此错误:

捆绑安装返回以下内容:

0 投票
1 回答
2257 浏览

ruby-on-rails - 无法在 collection_select Rails 6 中进行 Stimulus JS 数据操作

我是 Stimulus JS 的新手。我试图collection_select在表单中使用一个简单的事件触发(使用 rails g 脚手架创建)有点卡住了。

这是我的dropdown-controller.js(刺激)文件:

这是我的_forms.html.erb文件:

我尝试了很多事情:

<%= form.collection_select :company_id, Company.all, :id, :name, data: {action: "change->dropdown#handleChange"} %>

<%= form.collection_select :company_id, Company.all, :id, :name, {data: {action: "change->dropdown#handleChange"}} %>

<%= form.collection_select :company_id, Company.all, :id, :name, data: {action: "dropdown#handleChange"} %> ...ETC

console.log('works!)如果我使用 html select 标签而不是 rails' ,我只能触发collection_select。如果我创建一个测试按钮或者我使用它,则该事件会触发form.check_box

有任何想法吗?对不起,如果这是一个愚蠢的问题,我没有想法。

谢谢!

0 投票
1 回答
361 浏览

ruby-on-rails - 自定义路由参数和 form_with 不使用参数

我正在尝试为地址分配一个自定义 ID,因此不容易猜测记录(对于想要添加和更改其他人地址的人)。出于某种原因,虽然我可以使用正在创建的正确路径创建记录,但来自的编辑路径form_with似乎没有使用自定义资源参数。

路线.rb

_form.html.erb

这来自我的new.html.erband edit.html.erb

删除地址.rb

deladdress_controller.rb

当我转到以下 urlhttp://localhost:5000/deladdresses/112750-UBTYOJGK/edit时,我可以看到 delid 在那里。但是,当我查看它将尝试提交的表单时,我有以下内容。id 是 5 而不是 112750-UBTYOJGK。

我显然错过了一些东西,但我真的不知道是什么。

提前感谢您为完成这项工作提供的任何帮助。

0 投票
2 回答
401 浏览

ruby-on-rails - 如何向 form_with 添加隐藏字段?

我正在尝试将隐藏字段添加到form_with.

这是 3 次尝试(以及结果/错误消息)

第一次尝试

来自:https ://guides.rubyonrails.org/form_helpers.html

<%= hidden_​​field_tag(:parent_id, "5") %>

所以我尝试:

在此处输入图像描述

第二次尝试

来自:https ://api.rubyonrails.org/v6.0.3/classes/ActionView/Helpers/FormHelper.html#method-i-hidden_​​field

示例: hidden_​​field(:signup, :pass_confirm)

所以我尝试

在此处输入图像描述

第三次尝试

这比其他两次尝试更进一步,因为至少显示视图加载而不是出错。

但是提交的参数是

即它包含一些不应该包含的额外标点符号(我认为它已被制成嵌套哈希或其他东西?)

0 投票
1 回答
59 浏览

ruby-on-rails - 当表单输入与模式参数不匹配时如何更改消息?

pattern可以向表单字段提供参数,如此处所述

示例(来自此处的正则表达式)

如果不遵守正则表达式,则会显示一条消息。例如:

在此处输入图像描述

如何自定义该消息?

0 投票
0 回答
38 浏览

ruby-on-rails - 防止 form_with 生成参数并提交(全部自行)?

当一个form_with提交时,它会提交所有需要的参数,还有一个叫做“预订”的参数,我完全不知道这个参数是从哪里来的。它不包含在视图中,也不包含在控制器中。似乎form_with是从某个地方生成它,但我不知道如何/为什么?

我可以允许它作为permitted 参数,以防止出现Unpermitted parameter: :booking错误,然后忽略它,但我更愿意知道发生了什么并删除无关参数。

为什么会form_with生成不需要的参数,我该如何阻止它这样做?

请注意,代码中的任何地方都没有引用任何booking参数(最接近的是url: '/booking-confirm'

0 投票
2 回答
1780 浏览

ruby-on-rails - 更改“请匹配请求的格式。” 别的东西?

是否有一种简单的方法可以自定义在pattern: "([A-Za-z0-9\-\_]+)"不满足参数并出现此消息时出现的消息:

> 请匹配要求的格式

例如

0 投票
1 回答
39 浏览

ruby-on-rails - 如何使用 form_with 为选择菜单添加“任何”选项

我正在尝试在我的游戏过滤器中添加“任何”部分。在广泛的视图中它工作正常我只是重新加载页面传递链接其他需要的参数,如下所示:

但是,在我的移动视图中,我使用的是 form_with 助手:

有没有办法给每个选项一个“任何”,而不是重置其他功能?

0 投票
1 回答
873 浏览

ruby-on-rails - Rails form_with select selected option

我有一个没有模型支持的表单,它使用form_withRails 6 构建:

我能找到的唯一设置默认选择哪些选择选项的文档说它将预先选择模型中的任何内容。由于我没有支持模型,我该如何选择选择哪个选项?我已经浏览了一些选项,但一无所获,但我不一定知道在哪里看。