Questions tagged «ruby-on-rails»

Ruby on Rails是一个用Ruby编写的开源全栈Web应用程序框架。它遵循流行的MVC框架模型,并以其“配置之上的约定”方法进行应用程序开发而闻名。

6
将Rails 3.1与多个数据库连接
在ShowNearby,我们一直在进行从PHP到RoR 3.1的巨大迁移,并且我们面临着一些您可能已经解决的一些问题。 我们拥有大量数据,因此我们决定将数据库分成几个我们可以分别处理的数据库。例如,我们的帐户,地点,日志和其他信息被分为几个数据库 我们需要获得移植,装置,模型才能很好地玩耍,到目前为止,情况一直很混乱。我们对解决方案可接受的一些要求: 一个模型应该与其中一个数据库中的一个表相关。 rake db:drop-应该删除我们在database.yml中指定的所有数据库环境 rake db:create-应该创建我们在database.yml中指定的所有数据库环境 rake db:migrate-应该运行到各种数据库的迁移 rake db:test-应获取固定装置并将其放入各种数据库以及测试单元/功能/等 我们正在考虑为每个数据库设置单独的Rails项目,并将它们与ActiveResource连接起来,但是我们认为这不是很有效。你们有没有处理过类似的问题?

4
我是否需要为HABTM连接表手动创建迁移?
我正在努力使HATBM正常工作。我有一个很烂的scanario:文章和标签。我认为,这里应该使用HABTM,因为它是多对多的关系。但是我不知道是否应该手动创建联接表(在这种情况下为articles_tags)。 我的代码目前如下: class Article < ActiveRecord::Base has_and_belongs_to_many :tags end class Tag < ActiveRecord::Base has_and_belongs_to_many :articles end 当我运行迁移时,没有创建第三个表。另外,我想补充一点,我的第三个表不包含任何域逻辑,只是盲目的分配。 我正在使用Rails 2.2.2


6
在RSpec中运行Ruby调试?
我试图让Ruby调试器在我的一种规格中运行: describe User do it "should be valid" do debugger User.new.should be_valid end end 当我运行rspec时,我得到: debugger statement ignored, use -d or --debug option to enable debugging 我尝试了以下方法: rake spec --debug rake spec --debug --trace rake spec:models --debug bundle exec rspec --debug bundle exec rspec --debug spec/models/ bundle exec rspec --d …

4
如何将HTML ID添加到rails form_tag
我正在使用Rails 2.2.2,我想向由form_tag生成的html表单代码添加一个id。 <% form_tag session_path do -%> <% end -%> 目前生产: <form action="/session" method="post"> </form> 想要产生: <form id="login_form" action="/session" method="post"> </form> 该API并没有任何帮助,我尝试添加各种 :html => {:id => 'login_form'} 没有运气。


15
您如何使用Ajax请求处理Rail的Flash?
我对提出的解决方案感到非常满意。基本上,我有一个帮助程序方法可以重新内联刷新Flash,然后有一个after_filter可以清除Flash(如果请求是xhr)。有没有人比这更简单的解决方案? 更新:上面的解决方案是用Rails 1.x写回的,不再受支持。

7
当ID包含方括号时,按ID查找DOM元素?
我有一个DOM元素,其ID类似于: something[500] 它是由我的Ruby on Rails应用程序构建的。我需要能够通过jQuery获得此元素,以便我可以沿DOM向上移动以删除其父级的父级,该父级具有一个我事先无法访问的变量ID。 有人知道我该怎么做吗?以下代码似乎无效: alert($("#something["+id+"]").parent().parent().attr("id")); 经过进一步检查,以下内容: $("#something["+id+"]") 返回一个对象,但是当我在其上运行“ .html()”或“ .text()”时,结果始终为null或只是一个空字符串。

4
需要在Rails中返回JSON格式的404错误
我在Rails应用程序中有一个普通的HTML前端和一个JSON API。现在,如果有人调用/api/not_existent_method.json它,它将返回默认的HTML 404页面。有什么办法可以将其更改为类似的内容,{"error": "not_found"}同时保留HTML前端的原始404页面?

9
工厂女孩创建绕过我的模型验证
我正在使用Factory Girl在模型/单元测试中为组创建两个实例。我正在测试该模型以检查对.current的调用是否根据如下所述的expiry属性仅返回“当前”组... describe ".current" do let!(:current_group) { FactoryGirl.create(:group, :expiry => Time.now + 1.week) } let!(:expired_group) { FactoryGirl.create(:group, :expiry => Time.now - 3.days) } specify { Group.current.should == [current_group] } end 我的问题是,我已经在模型中进行了验证,该模型可以检查新组的有效期是否在今天的日期之后。这会在下面引发验证失败。 1) Group.current Failure/Error: let!(:expired_group) { FactoryGirl.create(:group, :expiry => Time.now - 3.days) } ActiveRecord::RecordInvalid: Validation failed: Expiry is before todays …

15
使用Capybara,如何切换到具有“ _blank”目标链接的新窗口?
也许这实际上并不是我遇到的问题,但是似乎当我“ click_link”与target =“ _ blank”的链接时,会话会将焦点集中在当前窗口上。 因此,我要么希望能够切换到新窗口,要么就忽略_blank属性-本质上,我只是希望它实际转到链接所指示的页面,因此我可以确保它是正确的页面。 我使用webkit和硒驱动程序。 到目前为止,我已经提交了我的发现。一个更彻底的答案是极大的赞赏。 同样,这仅适用于硒-非常感谢webkit驱动程序的等效功能(或指出我自己可以在哪里发现它)。

7
如何检查数组是否包含对象?
我有一个数组@horses = [],里面装满了一些随机的马。 如何检查我的@horses阵列中是否包含已包含(存在)的马? 我尝试了类似的东西: @suggested_horses = [] @suggested_horses << Horse.find(:first,:offset=>rand(Horse.count)) while @suggested_horses.length < 8 horse = Horse.find(:first,:offset=>rand(Horse.count)) unless @suggested_horses.exists?(horse.id) @suggested_horses<< horse end end 我也尝试过,include?但我看到它仅适用于字符串。随着exists?我得到以下错误: undefined method `exists?' for #<Array:0xc11c0b8> 因此,问题是如何检查阵列中是否已包含“马”,这样我才不会用同一匹马填充它?



8
在Rails中自定义Devise视图
我正在使用devise进行用户身份验证,但是我在注册,登录等页面上有不错的模型。我已经完成了rails generate devise:views User命令,并将所有视图都包含在views文件夹中,但是,当我用自己的new.html.erb替换registration / new.html.erb时,没有任何变化或看起来都没有变化。好像我做了什么。 任何人都知道我在做什么错,或者至少知道如何成功自定义设计视图 PS是否需要注意将我的devise / registration#new更改为/ signup的路径很重要?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.