问题标签 [apache-cocoon]
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.
ruby-on-rails - 使用 f.select for 选择嵌套对象;对于 ID= 的报价,找不到 ID=1 的项目
我有一个报价系统,我正在选择要添加到报价的项目。报价和项目通过第三个表(quote_items)关联。我使用 cocoon gem 来创建 quote.item 属性,在我的情况下,这只是要附加到报价单的项目的项目 ID。从那里我想提取为选定项目保存在数据库中的所有项目属性。在尝试创建报价选择一个项目后,我收到此错误消息:在尝试创建报价时,找不到 ID=1 的项目,用于 ID= 的报价。
报价控制器
报价单
_item_fields.html.erb
报价单
有什么我想念的想法吗?
谢谢!
ruby-on-rails - 如何使用 link_to_add_association cocoon gem 只插入一行
我正在使用 cocoon gem 并使用 link_to_add_association 插入一行。我需要在插入新行之前保存该行。
javascript - 在茧部分(rails)中使用javascript
我有茧宝石工作并在我的应用程序中正确添加\删除部分。我添加了动态下拉列表来过滤 cocoon 创建的部分中的选择标签。第一个下拉列表使用 javascript 过滤第二个下拉列表,但仅适用于 cocoon 创建和添加的第一个部分(项目)。谁能帮我弄清楚确保这对茧创建的每个部分都有效的最佳方法是什么,而且我可以根据我想要过滤的次数多次更改第一个下拉列表?
这是 cocoon 每次添加项目时创建的部分代码:
xml - 在 HTML 属性中使用 XSL 参数值
我有如下表格
我希望表单将颜色发送到另一个包含矩形的 XSL 文件。到目前为止,将颜色传递给另一个 XSL 文件是可行的,但现在我想动态更改矩形的填充颜色,但使用传递的参数不起作用。
这是我的站点地图
这就是我到目前为止所尝试的。有人有建议吗?
javascript - 为什么我的代码中的茧不捕获回调?
我在 ruby 中使用 cocoon 制作了一个功能性嵌套形式。问题是我试图使用插入前和插入后,但它什么也没做。
我的看法:
我的 javascript
我看过这个帖子:茧添加关联,如何限制关联的数量,因为它是我想做的。我也试过这个选项,控制台是空的:
提前致谢。
ruby-on-rails - 使用茧宝石将按钮显示到另一个页面
我在其中一个表单上使用 cocoon,我想在每一行添加一个显示按钮,它将用户引导到另一个模型的显示页面。然而,虽然一切工作顺利,但我无法让这个按钮显示出来。
所以这是我目前的观点:
当我尝试打开此页面时,我收到此错误:
没有路线匹配 {:action=>"show", :controller=>"products", :id=>nil},缺少必需的键:[:id]
但是,我知道 product_id 不是空的,因为在桌子上我可以为每一行打印 product_id。而且,我的产品路线绝对没问题,我已经可以使用它们,包括表演动作。而且我知道 product_id 在 products 表中有一个匹配的 id。
此外,如果尝试使用以下方式转到产品的索引页面:
将生成以下网址:
我只是不明白为什么当我使用它时它无法获取 id product_path。
任何帮助都将被视为。
谢谢。
ruby-on-rails - 使用茧宝石时看不到部分
我已经安装了 cocoon 并根据此处概述的示例添加了所有必要的更改:https ://github.com/nathanvda/cocoon/wiki/ERB-examples
然而由于某种原因,我无法在我的局部中看到任何东西。
视图/order_items/_order_item_fields.html.erb:
意见/订单/new.html.erb:
订单.rb:
我也收到缺少模板错误:
Missing partial orders/_order_item_fields, application/_order_item_fields with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby, :coffee, :jbuilder]}.
我相信如果我试图从另一个视图文件夹呈现部分,那么在部分名称之前添加文件夹应该可以工作:
<%= render "order_items/order_item_fields", f: order_item %>
如果我_order_item_fields.html.erb
从views/order_items
我的views/orders
目录移动,页面将呈现,但我仍然看不到order_item_fields
部分内部的任何内容。
javascript - 茧宝石是否需要在控制器新动作中构建n个模型?
我已经完全按照描述在我的 rails 4 应用程序中安装了cocoon gem 。这在父模型表单中非常有效,允许用户为子模型添加/删除字段。我遇到麻烦的地方是子对象的提交。如果子模型是在父模型的新操作中构建的,那么无论创建了多少模型,我都可以准确地提交,仅此而已。从提交的参数中可以明显看出这一点,因为它们包含 child_attributes(或者不包含,如果控制器中没有构建子模型)。
目前正在运行
导轨 4.2.10
红宝石 2.5.1
茧 1.2.14
jquery-rails 4.3.3
jquery-ui-rails 6.0.1
代码片段
父模型
儿童模型
表单 (new.html.erb)
部分(命名为 _competition_fields.html.erb
应用程序.js
从 Rails 控制台(插入父模型后)
我已经解决了 gem 设置的所有常见问题(accepts_nested_attributes_for、inverse_of、child_fields 部分的命名和缩进、安装了 jQuery 并调用了 cocoon 等)据我所知,这一切都符合规范。只要在新动作中构建子模型,它就可以工作。
ruby-on-rails - 带有 Cocoon 的动态表单 - NilClass:Class 的未定义方法“reflect_on_association”:
我正在使用 cocoon gem 构建一些动态表单,我可以在其中添加新的文本字段。我读过其他人同样的问题,但我不知道我做错了什么,我知道它必须与协会有关,但我似乎不明白。
所以这些是我的模型:
我的表格:
使用部分 _oids_fields.html.erb:
我究竟做错了什么?我得到 NilClass:Class: 的未定义方法“reflect_on_association”。形式没问题,因为我正在查看 cocoon 的页面并且语法相同,所以我想它一定与关联有关,但我真的不知道,我对 Rails 世界有点陌生。也许因为它说 nilClass,我需要为 Oid 模型创建一个控制器,我在其中创建一个新方法或其他东西?我迷路了。
显然这也不起作用,我有同样的错误:
谢谢你的每一个答案。
编辑:只是为了更清楚,因为我很困惑。
在尝试实现这个动态表单之前,我已经有了一个可以正常工作的表单。例如,最后两个字段是:
所以基本上这里我存储模型中属性 :oid 和 :oid2 上输入的值。
但是我不想拥有这两个字段,而只想拥有一个,并且更动态地添加,因此我可以输入例如 6 个值并将它们全部保存在 :oids 属性中。由于我将值保存在属性上,所以我不知道是否必须像以前那样为 Oid 创建模型,并将其设为belong_to monitor_category。或者,如果我可以 :oids
向控制器添加一个属性并将所有值存储在该变量中。
ios - 如果正确定义 Range 标头,则 MP4 文件无法在 Safari(桌面和 IOS)事件中播放
很多天以来,我一直在尝试加载此链接:http ://test-v4.pleade.com:8205/pleade/functions/ead/detached/docs/test.mp4它在 Safari(桌面和IOS设备)
根据这个线程:为什么 Safari 不能播放 <video> 中没有扩展名的文件?(以及许多其他人),您会注意到在我的案例中正确定义了 HTTP 标头(范围、内容长度、...)。
当您检查“请求响应流”时,您可以注意到第一个请求,其中 Safari 测试与 Range(字节范围 0-1)的兼容性被正确处理。但是,它在这一点上停止了。Safari 拒绝抛出他询问 MP4 文件每字节字节数的下一部分。
我正在使用 Tomcat 和 Apache Cocoon。为了确保避免编码问题,我直接尝试了相同的 mp4 文件,并且只使用了 Apache 服务器。它在 Safari 和所有其他浏览器中加载良好(直接链接:http: //test-v4.pleade.com/test.mp4)。
谢谢你的帮助。