Rails3 + Devise + Simple_form:路径助手中的奇异资源和simple_form_for错误

有两个问题: 如何让simple_form_for使用单一资源:与用户相关联的foo_object(参见下面的代码摘录)? 我得到NoM​​ethodError: simple_form_for行中@foo的未定义方法foo_objects_path 。 foo_object_path有一个有效的路径,但似乎simple_form_for使用复数版本。 我已经google’d并阅读有关单一资源和路径问题的SOpost,但还没有找到解决方案。 我是否需要为:foo_object创建嵌套资源,因为它与:user相关联? 如果是,那么它会与Devise的用户模型冲突吗? 路线: devise_for :users resource :foo_object 模型: :user is the Devise User’s model and has_one :foo_object :foo_object belongs_to :user 查看(haml):(更新6/27/13:更正为=从 – ) = simple_form_for @foo do |f| = f.input :firstname = f.input :lastname = f.button :submit 希望很清楚。 谢谢。

刷新后退按钮上的所有信息按:Ruby on Rails

我的RoR网站使用fullcalendar gem实现日历。 每个用户都有一个日历,显示他或她正在参加的事件。 以下方案为我的问题设定了阶段: 用户Alice在她的日历上单击一个事件,该事件将导致事件的show页面。 Alice单击事件show page上的“无人参与事件”按钮 Alice单击后退按钮。 她无人看管的事件仍然列在她的日历上。 如何让浏览器刷新Alice的事件信息,以便在按下后退按钮时仅显示她当前正在参加的事件? 我已经搜索了Stack Overflow并没有找到可行的解决方案。 如此处所示的缓存清除如何防止Rails中的浏览器页面缓存不起作用。 我甚至不确定这是一个缓存问题。 也许有一些javascript会强制重新加载信息? 任何解决方案都非常感谢。 谢谢! 回应@ElliottRoche: 在视图中单击“出席”按钮,触发出席操作: true, :id => “attend” %> 参加活动会从与会者列表中添加/删除与会者,如下所示: def attend @event = Event.find(params[:id]) @attendee = User.find(session[:user_id]) if @event.users.exclude?(@attendee) @event.users << @attendee @event.save else @event.users.delete(@attendee) end @attendees = @event.users respond_to do |format| format.js format.html { } format.json { } […]

我如何使用冷冻Capistrano第2部分?

继我几天前使用冷冻Capistrano的问题之后,我仍然遇到在我的供应商文件夹中运行Capistrano的问题。 当我尝试运行我的冷冻版帽 ruby -r rubygems ./vendor/gems/capistrano-2.5.2/bin/cap deploy-with-migrations 我收到一个错误 … RubyGem version error: net-ssh(1.0.8 not >= 2.0.0) (Gem::LoadError) … 我在我的供应商文件夹中冻结了net-ssh-2.0.4,因为我知道它是一个依赖项,所以我该如何使用它呢? 我希望将我的供应商文件夹添加到gempath下的.gemrc文件中:本来可以做到这一点,但事实并非如此。 ‘gem environment’显示供应商路径,但’gem list’不显示vendor文件夹中的gem。 有任何想法吗?

Rails通过带有来自carrierwave的图像的标签显示相关post

post我试图通过使用carrierwave gem上传每个相关post的附加图像来按标签检索相关post 标签是从头开始编写的,但类似于act-as-taggable-on gem 。 下面从每个标签的Rails计数文章和相关文章标签中选择的解决方案按标题显示相关的post。 RELATED POSTS: 现在我想通过图像而不是上面的title来显示相关的post。 代码显示post的图像是 我怎样才能在上面的相关post中使用它? 我试过了 但这引发: NameError:未定义的局部变量或方法’related_post’用于# 显然, related_post没有记录在carrierwave上传器模型中,因为它与标签模型不同。 有什么帮助吗?

如何在混合Ruby / GWT系统中管理会话?

我目前有一个Ruby on Rails系统,并计划将其移植到GWT。 在我们这样做之前,想要在GWT中编写部分站点的概念certificate以表明GWT可以使用和显示当前内容。 系统的GWT部分中的数据流如下: 客户端向GWT服务器发送RPC调用 服务器接收RPC调用,然后向Rails系统发出等效的Ajax请求 服务器根据Ajax请求的结果生成Java对象,并将其传递回客户端 我现在遇到的问题是跨两个系统管理用户会话数据。 我们只有1个Tomcat实例,它有自己的会话类型,然后我们的Ruby系统使用ActiveRecordStore将会话数据存储在数据库中。 这里的问题是当Tomcat系统与Ruby系统进行通信时,如果GWT客户端发出了登录请求,那么从GWT系统登录的最后一个用户将在Rails系统中执行所有传出的Ajax请求,就好像它们一样由于Tomcat系统看起来像Rails的单个客户端,所以当前用户。 无论如何,我怎么能这样做,如果用户开始与Tomcat系统的会话,Ruby系统将意识到这一点并具有等效的会话,以便即使Tomcat服务器是它的单个客户端,Rails系统意识到许多不同的用户正在与该单个客户端进行通信。

Bootstrap不会加载rails和sass

我是Rails的新手,我想在我的网站上使用Bootstrap,但Bootsrap不加载。 有什么不对,我应该做些什么呢? 我按照这本手册: Sass-Bootstrap 这些是我的文件: 的Gemfile: gem ‘rails’, ‘3.2.16’ gem ‘ruby’ gem ‘bootstrap-sass’, ‘~> 3.3.5’ gem ‘sass-rails’, ‘>= 3.2’ gem ‘turbolinks’ application.scss @import “bootstrap-sprockets”; @import “bootstrap”; 的application.js //= require jquery //= require jquery_ujs //= require turbolinks //= require bootstrap //= require_tree . application.html.erb “all”, “data-turbolinks-track” => true %> true %> 我项目中的ruby版本是ruby 2.0.0p481我的Rails版本是: Rails 3.2.22

Yosemite在WiFi上升级到10.10.3后,Rails服务器在网络上不可见

我的机器上运行的rails服务器可用于本地网络,一切正常,我可以使用本地服装192.168.xx:3000从其他设备访问我的服务器,在更新操作系统到10.10.3之后(我以前有优胜美地,但我不记得版本)这不再有效,我的防火墙被禁用,我试图使用“rails server –binding = 0.0.0.0”启动服务器,但它仍然不可见其他网络上的设备。 编辑:我现在看到问题是只有当我使用WIFI如果我通过霹雳和以太网连接一切正常 有谁知道如何解决这个问题? 谢谢!

Heroku在git push上部署“预编译资产失败”

我们使用Heroku fork命令克隆我们的生产Rails 3应用程序进行一些测试。 这很成功。 我们现在正尝试通过标准的heroku git push deploy将更改推送到新的分叉应用程序。 我们得到“预编译资产失败”。 并且每次尝试都“推送被拒绝,无法编译Ruby应用程序”错误。 这个精确的仓库用于更新我们的生产应用程序,没有任何问题。 你能指导我们如何解决这个问题吗?

为什么我为此devise_group调用获取NoMethodError?

我正在使用设计3.5.2,ruby 2.2.2,rails 4.2.3 class ApplicationController < ActionController::Base # Prevent CSRF attacks by raising an exception. protect_from_forgery with: :exception devise_group :user, contains: [:manager, :employee] end 我的理解是Devise应该自动加载这些助手 ,我应该能够在ApplicationController中使用它们而不做任何特殊的事情。 我尝试使用’rails s’运行应用程序,我收到此错误: multi-user-role-devise / app / controllers / application_controller.rb:6:in ‘: undefined method devise_group’for ApplicationController:Class(NoMethodError)from / home / me / ror-code / multi-user -role-devise / app / controllers / application_controller.rb:1:在`’….等 […]

嵌套属性适用于创建但更新记录时失败

我有嵌套属性的问题。 创建工作,但是当我更新时,错误消息显示我没有设置关系中的值。 我找不到原因。 主要模型 class Product true, :reject_if => proc { | r | r[“name”].blank? or r[“value”].blank? } end 嵌套模型 class ProductOption true validates :value, :presence => true end 控制器有点短路。 Items是Product与has_one相关的模型 class Admin::ProductsController “alert( ‘Daten gespeichert!’ );” } else format.js { render :js => ‘alert( “Fehler beim Speichern!” );’ } end end end def update […]