问题标签 [ruby-on-rails-4]
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 - 未定义的常量 Rails 4
通过复制并尝试在 Rails 4 中手动修改脚手架,当我想删除文章时出现错误:uninitialized constant Article::Tag
. 我想编辑文章时的另一个错误:“未定义的局部变量或方法 `article_params'”。
我不知道它来自哪里,显示的突出显示的错误是@article.destroy
if @article.update(article_params)
。考虑到我认为完美地复制了脚手架,我完全不明白......
谢谢你的帮助
ruby-on-rails - Rails 的 link_to_function 弃用状态?
link_to_function
Rails 中 Javascript 助手的状态如何?我读到,包括在这个 stackoverflow question中,它在 Rails 3.0 中被弃用,然后被弃用,然后在 3.2.4 中再次被弃用。它是我可以依赖并教给学生的东西吗?我刚刚阅读了Rails 3.2.8 的发行说明(通过搜索):
恢复了 button_to_function 和 link_to_function 助手的弃用。拉斐尔·门东萨·弗朗萨
这现在在哪里?
ruby-on-rails - Rails 中可能有 2 个 after_create 回调?
我有一个带有回调的 ActiveRecord 模型,例如:
我可以有 2 个回调吗?Rails 文档没有说明这一点:
当然,我可以尝试一下,但我想确保它得到官方支持,即使它确实有效。
使用最新的 Rails(截至目前为 3.2.11),但如果 Rails 4 支持这对我来说已经足够了。
更新:我确实尝试了上面的方法并且效果很好,我只是想要一些支持它的证据。
ruby-on-rails - Rails 4 中的动态 bang finder
Rails 4 正在摆脱动态查找器,所以
变成
好吧,没什么大不了的。User.find_by_hash!(hash)
但是,既然没有方法,那么处理动态 bang finder 的最佳方法是什么where!()
?Rails 4 Release Notes很方便地避免了这种情况。
更新:它明确地说:“除了 find_by_... 和 find_by_...!的所有动态方法都已弃用。”
从那以后,要么页面发生了变化,要么我在阅读时失明了。
ruby-on-rails - Rails 4.0 强参数嵌套属性,其键指向哈希
我在玩 Rails 4.x beta 并试图让嵌套属性与carrierwave一起使用。不知道我在做什么是正确的方向。在四处搜索之后,最终查看了 rails 源和强大的参数,我找到了以下注释。
所以它说你必须指定has中的每一个属性,我尝试了以下方法:
帕拉姆的例子:
控制器
以上不是“工作”(它没有触发载波)但是当使用我发现的标准嵌套示例时,我不再收到错误(未经允许的参数:文件名):
如果有人可以提供帮助,那就太好了。我找不到一个嵌套了指向哈希的键的示例。
ruby - Rails 4 直播
我正在关注这个 railscast,它解释了如何实现聊天应用程序。我一步一步地遵循了一切,它似乎一直在工作,直到我开始使用 redis 发布/订阅版本以使其更快,但我的应用程序现在没有更新聊天。每次收到新消息时,我都必须刷新页面!
这是我的代码:
在消息/index.html.erb
我在 assets/javascript 文件夹中有一个 .js 文件,它负责监听服务器事件。
我正在像这样的单独终端上启动 redis-server
我没有使用 brew 安装 redis,只是下载了一个 tar 文件并解压缩了它。它被系统识别,所以应该没问题。
当我尝试应用程序时,它不会使用新消息更新聊天。我需要刷新页面以使它们显示。有什么帮助吗?
jruby - Myapp::Application::Railties constant missing with Rails 4 beta and Jruby jruby-1.7.2
I couldn't get jruby to work with Rails 4 without a hack:
In railties/lib/rails/engine.rb, I had to initialize Railties with const_get, otherwise
Otherwise I get this:
./bin/rake
rake aborted!
uninitialized constant Myapp::Application::Railties
org/jruby/RubyModule.java:2677:in const_missing'
/Volumes/Opt/rails/rails-edge/railties/lib/rails/engine.rb:469:in
railties'
/Volumes/Opt/rails/rails-edge/railties/lib/rails/application.rb:241:in run_tasks_blocks'
/Volumes/Opt/rails/rails-edge/railties/lib/rails/engine.rb:444:in
load_tasks'
org/jruby/RubyBasicObject.java:1659:in __send__'
org/jruby/RubyKernel.java:2086:in
send'
/Volumes/Opt/rails/rails-edge/railties/lib/rails/railtie/configurable.rb:30:in method_missing'
/Volumes/Opt/projects/myapp/Rakefile:6:in
(root)'
org/jruby/RubyKernel.java:1046:in `load'
Rails itself won't start up for the same reason. Is this the correct fix or did I mask some underlying problem?
bundler - 在 Gemfile 中引用(未发布的)activesupport 4.0 gem
有没有办法在 Gemfile 中引用位于 Github 上 Rails git repo 子目录中的任何 Rails 4 gem(activesupport、activerecord、activemodel 等)?我有一个库,我想针对 activesupport 4 运行其测试,并且由于没有该 gem 的发布版本,我必须参考 git repo。
ruby-on-rails - Rails 4强参数-更新时堆栈级别太深
我一直在玩 Rails 4,并且在使用强参数更新记录时遇到了一些问题。我不断收到“堆栈级别太深”错误。我正在尝试更新 has_one meta_data 的帖子记录。
post.rb
post_controller.rb
创建新记录没有任何问题,并保存关联的 meta_data 记录。更新给了我一个 Stack Level Too Deep 错误。当我{:meta_data_attributes => [:title, :description, :keywords, :menu_name]}
从允许的参数中删除时,保存工作没有问题
任何帮助都会很棒,在此先感谢您!
ruby-on-rails - 如何在 Rails 4 中使用关注点
默认的 Rails 4 项目生成器现在在控制器和模型下创建目录“关注”。我找到了一些关于如何使用路由问题的解释,但没有找到关于控制器或模型的解释。
我很确定这与社区当前的“DCI趋势”有关,并想尝试一下。
问题是,我应该如何使用此功能,是否有关于如何定义命名/类层次结构以使其工作的约定?如何在模型或控制器中包含关注点?