Tag: ruby on rails 3.1

限制向用户显示的评论数量的好方法是什么,直到他们选择查看全部?

目前,模板中的每个循环都显示注释的位置。 假设用户对他们发布的微博有50条评论。 将显示一个显示50条评论的长列表。 为了节省页面空间,我决定将每个微博的评论限制为2-3。 如果用户希望查看更多内容,则可以单击“查看更多”或“查看全部”。 我想知道服务器如何应对如果有10,000条评论和用户点击“查看全部”这就是为什么我可以选择实施“查看更多”然后再显示50条评论“ 无论如何,我想知道一种很好的方法来限制显示给用户的评论数量,直到他们选择查看全部? 如果我去jquery / js路由并且这样做只有2-3个最新的消息被显示,其他的仍然被加载回来结束不会他们所以不会更好的选择是在ruby on rails上控制它不知何故? 我真的很喜欢一些很好的解决方案/信息,以最好的方式来做到这一点。 您需要的任何进一步信息我很乐意提供。 谢谢亲切的问候

Rails javascript数据库查询

如何从javascript进行PUT,POST或DELETE调用? 我使用jquery拖放收集了一些数据。 我如何将其发送到数据库? 我想我可能能够使用jQuery.ajax,但无法确切地知道如何。 任何指针赞赏。 解: 这是有效的JavaScript $(document).ready(function() { $.ajax({ type: “PUT”, url: “/articles/8″, // should be mapped in routes.rb data: {articles:{name:”New Name”}} }); }); 但它并没有将第8条的名称改为新名称。 Firebug没有显示错误,但我仍然无法将数据传递给编辑。 url是使用put url的标准更新,它存在于路由中。

如何在Rails 3.1资产管道中正确使用jQuery?

我正在开发一个爱好应用程序并使用一些jQuery。 结果很好,但我是一个jQuery noob,我认为我可以对代码结构做出一些重大改进。 暂且不考虑Coffescript,我一直想知道的一件事是如何在资产管道中正确使用特定于模型的.js文件。 例如,在使用我的用户模型时,我可能会在文档准备好时运行一些我想要运行的代码。 假设我把它放在$(document).ready(function() {…}); 在Rails 3.1生成的users.js文件中。 第二天,我正在使用Pet模型,我想要在文档准备好的情况下运行代码。 我把它放在另一个$(document).ready(function() {…}); 在Rails准备的pets.js文件中。 这是我的问题出现的地方: 应用程序运行时如何编译? 我用上面的例子实例化了两个jQuery实例吗? 我应该只使用$(document).ready(function() {…}); 一旦进入应用程序或Rails将我的代码编译成一个单独的调用? 什么属于特定于模型的.js文件? 它在开发和生产模式中的执行方式是否存在差异?

Rails 3.1 with Asset Pipeline,link_to:确认消息显示两次?

好的,所以我看到这个问题是由jQuery或Prototype的多个链接引起的,但我可以确认我只在整个页面链接到jQuery 一次 。 我的问题是:当我有一个确认删除的link_to ,弹出窗口显示两次。 这是我模板中的适用代码(用Slim编写): link_to(‘Destroy’, depot_path(@depot.id), :confirm => “Really?”, :method => :delete) 我在运行资产管道时运行Rails 3.1.0 ,在我的Gemfile gem ‘jquery-rails’ ,以下内容在我的application.js文件中(由Sprockets为资产管道编译)。 //= require jquery //= require jquery_ujs //= require ‘underscore’ //= require ‘backbone’ 我的/vendor/assets/javascripts/目录中有underscore.js和backbone.js ,sprockets似乎找不到那些。 我还搜索了sprockets提供的application.js文件,jQuery只在那里一次,jQuery UJS只在那里一次。 这是我的页面呈现时的头部样子(我省略了显示的csrf-token值,FWIW)。 Administration subdata.js有一些特定于Backbone的代码; 没有什么可以选择再次包含jQuery。 这是什么交易? 我的项目中没有任何其他jQuery文件; 它都是通过jquery-rails gem管理的。 是什么导致我:confirm方法两次开火? 编辑 :我以前在Rails 3.1的RC5上看到了这个,但现在我也在Rails 3.1实际上看到了它。

Micropost – 路由错误没有路由匹配 – 删除Micropost

我正在阅读Hartl的书,Ruby on Rails by Example。 在第11章中,您可以实现删除请求,以允许用户删除其配置文件中的微博。 但是,当我单击删除按钮时,我收到此路由错误:没有路由匹配[GET] / microposts / 303“ 我和其他遇到同样问题的人发现了类似的post。 但似乎没有人找到解决这个问题的明确方法。 也许现在已经太晚了,但我很难过。 我知道它与js文件或jquery有关。 你能帮忙吗? 以下是详细说明同一问题的其他post: jQuery没有在Michael Hartl的教程第11章的删除操作上工作 路由错误没有路由匹配[GET]“/ microposts / 304 – 删除一个Micropost – Michael Hartl的railstutorial.org第11章 在Hartl的ruby-on-rails教程的第11章中,“没有路由匹配”错误删除了Micropost – 完全难倒 http://www.techques.com/question/1-5871875/’No-route-matches’-Error-on-Delete-of-Micropost-in-Chapter-11-of-Hartl’s-ruby-on-rails-教程—彻底,难住了。

.tooltip()不是一个函数

我试图使用我从以下发现的.tooltip(): Jquery-ui工具提示 。 我所拥有的是一个在桌面上有一些信息的rails应用程序。 在单独的细胞中。 目前,您可以通过单击它来查看单元格的完整信息,这将打开jquery对话框,该对话框工作正常。 我想要添加到它是为了有两个选项。 1)单击调出jquery对话框的单元格 – 已经有效 2)或hover显示概述的单元格。 图片 从图像中,您可以点击预订,它将显示预订信息。 但是我试图扩展它,以便用户可以选择单击以查看信息或将鼠标hover在单元格上以查看信息。 做这个的最好方式是什么? 我有以下代码可以使用并启动对话框。 我尝试添加: <td class="” onmouseover=’$(“#booking”).tooltip()’> 之前没有用,我可能理解它不会起作用,因为两者之间会发生冲突。 除此之外,我确实尝试使用simpletip和qtip,但似乎没有运气。 是我试图做的不可行。 <td class="” onclick=’$(“#booking”).dialog()’> () <div id="booking” title=”Booking Information”> <div id="booking” title=”Edit Booking”> “booking_dialog”, :locals => { :booking => booking } %>

Rails 3.1 text_field表单助手和jQuery datepicker日期格式

我在我的Rails视图中有一个表单字段,如下所示: “datepicker” %> javascript函数将该类的所有输入字段转换为jQueryUI日期选择器。 $(“.datepicker”).datepicker({ dateFormat : “dd MM yy”, buttonImageOnly : true, buttonImage : “”, showOn : “both”, changeMonth : true, changeYear : true, yearRange : “c-20:c+5” }) 到现在为止还挺好。 我可以编辑记录,它会将日期正确地保存到数据库中。 我的问题是当我想再次编辑记录时。 当表单从记录中预先填充时,它以’yyyy-mm-dd’格式显示。 javascript只格式化在datepicker控件中选择的日期。 有什么方法可以格式化从数据库中检索的日期? 我可以在哪个阶段这样做? 谢谢,丹妮。 在下面的讨论之后的一些更多细节,我的表单分布在两个文件,一个视图和一个部分。 这是观点: “put”) do %> f %> 这是_fields局部视图: “datepicker” %> 控制器代码: def edit_individual @shows = Show.find(params[:show_ids]) end 我在environment.rb添加了以下内容: […]

Rails 3.1 – CSRF被忽略了吗?

在这里我的问题, 我有一个rails 3.1应用程序,我正在尝试发出ajax请求但是我收到警告消息“警告:无法validationCSRF令牌真实性”… 在我的布局中,我有辅助方法“csrf_method_tag” ,我添加了以下javascript代码(不知道是否真的需要): $.ajaxSetup({ beforeSend: function(xhr) { xhr.setRequestHeader(‘X-CSRF-Token’, $(‘meta[name=”csrf-token”]’).attr(‘content’)); } }); 我的Gemfile包含gem jquery-rails (> = 1.0.12),我在application.js的顶部需要jquery和jquery-ujs。 即使这样,该消息仍然出现。 我忘了什么吗? 谢谢你的帮助。

bundle exec rake assets:预编译失败,带有’unexpected token`

我准备将我的Rails 3.1应用程序部署到生产环境中,因为我正在使用资产管道, 所以我需要预编译我的资产 。 但是,当我尝试这个时,我得到一个显然与编译jQuery有关的错误: $ bundle exec rake –trace assets:precompile ** Invoke assets:precompile (first_time) ** Execute assets:precompile /home/adam/.rvm/rubies/ruby-1.9.3-p0/bin/ruby /home/adam/.rvm/gems/ruby-1.9.3-p0@rails-3.1/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets –trace ** Invoke assets:precompile:all (first_time) ** Execute assets:precompile:all ** Invoke assets:precompile:primary (first_time) ** Invoke assets:environment (first_time) ** Execute assets:environment ** Invoke environment (first_time) ** Execute environment ** Invoke tmp:cache:clear (first_time) ** Execute […]

Rails 3.1远程请求提交两次

我开发了一个Rails 3.1应用程序,它由100%的Ajax CRUD表单组成,用于输入用户和客户。 我创建了两个独立的模型,控制器,视图等。每个模型的视图包含用于创建编辑更新和销毁的jquery文件。 问题是当我执行任何执行远程操作的操作时,它被调用两次。 我可以在firebug的控制台视图中确认这种情况以及WEBrick输出中的输出。 任何人都可以帮助追踪这里发生的事情吗? 什么会导致rails处理每次调用两次?