Tag: coffeescript

Backbone和Rails关联:避免JSON HashWithIndifferentAccess错误

我正试图让我的骨干协会在rails应用程序中工作,而我在尝试更新现有模型时遇到了困难。 特别是,Rails抛出以下错误: 在2012-01-04 02:36:14 +1000开始PUT“/ posts / 2”为127.0.0.1 由PostsController处理#update更新为JSON参数:{“post”=> {“content”=>“Seconderona”,“created_at”=>“2012-01-03T10:51:09Z”,“id”=> 2,“ title“=>”第二个测试post“,”updated_at“=>”2012-01-03T10:51:09Z“,”评论“=> [{}]},”id“=>”2“}后期加载( 0.2ms)SELECT“posts”。* FROM“posts”WHERE“posts”。“id”=? LIMIT 1 [[“id”,“2”]]警告:无法批量分配受保护的属性:id已完成500内部服务器错误15ms ActiveRecord :: AssociationTypeMismatch(评论(#70104367824560)预期,获得ActiveSupport :: HashWithIndifferentAccess(#70104367278120)): app / controllers / posts_controller.rb:62: block in update’ app/controllers/posts_controller.rb:61:in中的block in update’ app/controllers/posts_controller.rb:61:in block in update’ app/controllers/posts_controller.rb:61:in block in update’ app/controllers/posts_controller.rb:61:in更新中’ 一些东西: 这是在(例如)触发的: c = window.router.comments.models[0] c.save({content: ‘Changed content’}) 此外,是的,’accepts_nested_attributes_for’出现在模型中。 下面的(违规)代码几乎是从thougtbot的“rails on rails”电子书中逐字记录的,我也尝试过关注骨干关系gem的文档。 […]

如何在haml模板中的coffeescript中的ruby代码中使用本地或实例变量

我是更新的rails并且面临复杂的问题,试图在haml模板中的coffeescript中使用ruby helper方法中的变量。 这是我的haml代码 :coffee $(‘input#field’).blur -> input = $(‘input#field’).val() #{ ruby_method( input )} ruby_helper.rb def ruby_method (arg) if arg @model = Model.new(arg) end end 这导致如下错误 未定义的局部变量或方法 还尝试了实例变量 :coffee $(‘input#field’).blur -> @input = $(‘input#field’).val() #{ ruby_method( @input )} 这不能将它传递给辅助方法。 如何在ruby helper方法中获取javascript变量? 提前致谢!

Rails / Javascript:如何将rails变量注入(非常)简单的javascript中

我想在rails中编写一个非常简单的javascript计算器,它将输入字段的数量乘以存储在rails变量中的数字(@ item.base_price) 所以,在javascript / coffeescript方面,这是粗略的: # app/assets/javascript/items.js.coffee $ -> $(‘#item_quantity’).change -> quantity_val = $(this).val() $(‘#total_amount’).html(quantity_val * ) 我知道如何通过每次change()调用的ajax调用来实现这一点,但我认为必须有一种优雅的,希望不显眼的rails方式,每次都不会命中服务器。 任何建议非常感谢

如何将CoffeeScript(或JavaScript)执行限制在Rails 3.1中的特定控制器和操作?

新的Rails 3.1资产管道非常好,但由于所有CoffeeScript(或JavaScript)文件都被融合到每个页面中包含的单个文件中,因此它提出了这个问题: 如何将脚本的执行限制为特定的控制器或操作? 我的CoffeeScript中有没有办法知道在请求期间使用了哪个控制器和操作,以便我可以在我的脚本中放置条件语句? 还是我完全以错误的方式接近这个?

Rails – 从JavaScript调用CoffeeScript

我正在使用带有CoffeeScript的Rails 3.1并遇到了麻烦。 如何从位于.js.coffee文件中的.js.erb文件中调用函数? 假设.js.coffee中的函数如下: myName = -> “Bob” 我想我可以像任何常规的js函数一样调用它,例如: var theName = myName(); 但这似乎不起作用。 有任何想法吗? 或者是否可以在我的.js.erb文件中使用coffeescript来使一切都一样?

Rails 3.1。 如何防止Rails使用CoffeScript?

如何防止Rails启用CoffeeScript并使用纯JavaScript?

使用will_paginate gem在rails 3.2.3中调用Ajax

我试图用will_paginate gem实现一个Ajax调用,我发现这个指南http://ramblinglabs.com/blog/2011/11/rails-3-1-will_paginate-and-ajax看起来像一个简单的解决方案,尽管它包括我不熟悉的coffeescript,所以如果有人有不同的解决方案,请告知.. 我的代码如下 我的看法 我的部分(userrecipes) 90 %> “Are you sure?”, :method => :delete %> ‘favourites’, :action => ‘create’, :recipe_id => r.id}, {:method => :post } %> 更新了userrecipes.js.erb文件 $(‘#userRecipes’).html(”); $.setAjaxPagination(); CoffeeScript的 $ -> $.setAjaxPagination = -> $(‘.pagination a’).click (event) -> event.preventDefault() loading = $ ” $(‘.other_images’).prepend loading loading.fadeIn() $.ajax type: ‘GET’, url: $(@).attr(‘href’), dataType: ‘script’, success: […]

Rails 4 jQuery,javascript和咖啡脚本无法正常工作

我是rails和web开发的新手,尽管我在控制系统和固件中有近二十年的C / C ++,而且还有很多shell和perl脚本。 如果没有明确地包含它,我就无法让jquery工作,即使它在application.js清单中,我也无法让任何单独的coffeescripts工作。 Ubuntu 14.04LTS,ruby 2.2.1p85,rails 4.2.0 的application.js //= require jquery //= require jquery_ujs //= require turbolinks //= require_tree . application.html.erb _header.html.erb My Application Title true %> true %> … 的Gemfile source ‘https://rubygems.org’ # Bundle edge Rails instead: gem ‘rails’, github: ‘rails/rails’ gem ‘rails’, ‘4.2.0’ # Use sqlite3 as the database for Active […]

如何在Rails 3.1 for CoffeeScript中使用选项“–bare”?

有人知道如何在Rails 3.1中使用此选项? 现在CoffeScript在每个文件上放置一个.call .call(this)函数,但我想删除它。 编辑:“ 无法找到变量”错误与Rails 3.1和Coffeescript “和” 模式为CoffeeScript模块 “有我想要的。 我将改变我的全局变量以使用@global范围。

ruby on rails //如何使用咖啡。 而不是我的项目中的js?

我正在研究这个项目。 我想使用actioncable为我的项目添加聊天。 但我按照示例(示例地址在注释中),但发生了错误。 在该示例中,仅使用Js。 而不是咖啡,我想使用Js,这样它不会影响现有的咖啡。 我该怎么办? 我的github地址是https://github.com/sangyeol-kim/stackoverflow_ask_actioncable 我将咖啡文件的名称更改为js。 从gemfile我隐藏了gem’coffee-rails’。 (#gem’coffee-rails / bundle install)但该网站根本不起作用。