安装rvm,更新.gmrc文件,更新rubygems并运行后gem install rails -v ">=3.1.0rc",我现在似乎已经完全搞乱了:
$ rails -v
/usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find rails (>= 0) amongst [] (Gem::LoadError)
from /usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:256:in `to_spec'
from /usr/local/lib/site_ruby/1.8/rubygems.rb:1182:in `gem'
from /var/lib/gems/1.8/bin/rails:18
Run Code Online (Sandbox Code Playgroud)
myhome@myhome-mini:~$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.6.2
- RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [i686-linux]
- INSTALLATION DIRECTORY: /home/myhome/gems
- RUBY EXECUTABLE: /home/myhome/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
- EXECUTABLE DIRECTORY: /home/myhome/gems/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-linux
- GEM PATHS:
- /home/myhome/gems
- /usr/lib/ruby/gems/1.8
- GEM CONFIGURATION:
- :update_sources => true
- …Run Code Online (Sandbox Code Playgroud) 我想将参数传递给工厂,该工厂将用于在关联模型上设置属性.相关模型在工厂内创建.
我有一个事务模型,通过连接表TxLink与自己的多对多链接.我想调用link = FactoryGirl.create(:link_red_to_sub, sub: 10, red: 7)哪个将创建两个Transaction对象和一个链接这两个的TxLink.
由于最后的结果,我在下面的关联行中收到错误units: sub.错误是"未定义特征".我试过units: { sub }(用括号)而不是骰子.
factory :tx_link do
units "9.99"
factory :link_red_to_sub do
ignore do
sub 0
red 0
end
units { red }
association :giver, factory: :transaction, units: sub
association :taker, factory: :redemption, units: red
end
end
Run Code Online (Sandbox Code Playgroud) 我将一个Spree Rails应用程序推送到Heroku,我看到它正在使用ssl https://并且在浏览器中有一个黄色的挂锁.单击此按钮会显示"已验证身份",证书信息显示为"已发送至:*.herokuapp.com"
这很棒.在Heroku端没有任何配置或费用,我的应用程序使用SSL和有效的证书.好吧,这是一个黄色而不是绿色挂锁,但嘿,免费也不错.
我确定这是一个愚蠢的问题..但是如何在Heroku上运行另一个带有验证证书的Rails应用程序而无需支付SSL附加组件并购买我自己的证书?
我有一个回形针文本文件附件(在Rails中).
我的存储桶政策是:
{
"Version": "2008-10-17",
"Id": "Policy123",
"Statement": [
{
"Sid": "Stmt123",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"s3:GetObjectVersion",
"s3:DeleteObject",
"s3:DeleteObjectVersion",
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::my_bucket/*"
}
]
}
Run Code Online (Sandbox Code Playgroud)
我想限制访问这些操作只有在我的网站发出请求时才允许.只是将其更新为"Principal":{"AWS":"mywebsite.com"}?
在rspec功能场景中,我有:
scenario 'shows things', js: true do
page.find('#my_div').trigger(:click)
Run Code Online (Sandbox Code Playgroud)
这似乎没有触发该元素的click事件上的jQuery处理程序.在调试器中,此调用返回一个空字符串"".
capybara-webkit是否能够使用jQuery处理程序模拟鼠标事件来触发更新dom的ajax请求?如果是这样,对此案件的任何建议?我从selenium-webdriver切换,因为不支持capybara #trigger方法.
并尝试直接触发jQuery事件会引发错误:
page.execute_script "$('#masthead .fclass').trigger('click')"
Run Code Online (Sandbox Code Playgroud)
给
Capybara::Webkit::InvalidResponseError:
Javascript failed to execute
Run Code Online (Sandbox Code Playgroud)
我的gemfile有
group :test do
gem 'capybara'
gem "database_cleaner", "~> 0.9.1"
gem 'capybara-webkit', git: 'git://github.com/thoughtbot/capybara-webkit.git'
gem 'launchy'
end
Run Code Online (Sandbox Code Playgroud)
我正在使用'edge'capybara-webkit,因为我遇到了一个带有xpath错误的错误(v2.04?).
虽然我尝试在spec/spec_helper.rb中添加机架异常,但我无法获取javascript错误的日志:
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'rspec/autorun'
require 'capybara/rspec'
require 'rack/utils'
Capybara.app = Rack::ShowExceptions.new(MyApp::Application)
# Requires supporting ruby files with custom matchers and macros, etc,
# in spec/support/ and its subdirectories.
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
RSpec.configure do …Run Code Online (Sandbox Code Playgroud) 注册后,需要确认,我的应用程序重定向到经过身份验证的页面,因此身份验证失败并且设计重定向到登录路径.
注册后我的flash消息因第二次重定向而丢失.
flash.keep在重定向到登录路径之前,在application_controller.rb或帮助程序中,是否可以添加一个地方?如果有替代方案,我宁愿不为此设法覆盖设计控制器.
我正在使用jquery-rails gem.在app/assets/javascripts/my_engine/application.js.erb中的rails(不可安装)引擎中:
//= require jquery
//= require jquery_ujs
//= require jquery-ui.min
Run Code Online (Sandbox Code Playgroud)
我收到错误:
Sprockets::FileNotFound: couldn't find file 'jquery-ui.min'\n (in /home/me/rails/my_engine/app/assets/javascripts/my_engine/application.js.erb
Run Code Online (Sandbox Code Playgroud)
同样的设置在容器应用程序中工作正常.如何清单可以找到jquery和jquery_ujs而不是jquery-ui.min?
我在我的容器应用程序的Gemfile中,在引擎的gemspec和引擎的Gemfile中运行了jquery-rails gem并运行了bundle install.
有没有一种简单的方法来列出包含特定关注点的所有模型的类名?
就像是:
ActiveRecord.models.select{ |m| m.included_modules.include? MyConcernModule }
Run Code Online (Sandbox Code Playgroud) 将数据从一个amazon rds mySQL实例传输到另一个aws帐户的RDS mySQL实例的最佳方法是什么?
这是为了将Heroku上的网站转移给其他所有者.
当我测试将图像上传到我的S3存储桶时,我得到了一个AWS :: S3 :: AccessDenied(使用Ruby on Rails).代码使用我自己的安全密钥和密码到我自己的桶,我已经授予自己所有权限(列表,上传/删除,查看权限,编辑权限).
是否还需要输入Bucket Policy来设置ACL权限?我不明白为什么这是必要的,因为我的代码使用我自己的帐户密钥来访问S3.此外,图像在我的网站上显示正常,因此读取权限似乎没有问题.
设计确认_url只生成一个没有域名的相对网址,例如:
http://users/confirmation?confirmation_token=...
Run Code Online (Sandbox Code Playgroud)
我试过改变
confirmation_url(@resources, :confirmation_token => @resource.confirmation_token)
Run Code Online (Sandbox Code Playgroud)
至
confirmation_url(:confirmation_token => @resource.confirmation_token)
Run Code Online (Sandbox Code Playgroud)
但它产生相同的网址.我升级到设计2.2.3但结果相同.Rails 3.1.4
更新: 我已在我的production.rb中设置:
config.action_mailer.default_url_options = { :host => 'mysubdomain.mysite.com' }
Run Code Online (Sandbox Code Playgroud)
我尝试过设置
before_filter set_actionmailer_host
def set_actionmailer_host
ActionMailer::Base.default_url_options[:host] = request.host_with_port
end
Run Code Online (Sandbox Code Playgroud)
在应用程序控制器中无济于事(https://github.com/plataformatec/devise/issues/1567)
更新: 这在开发和生产中都会发生.
更新
我无法理解为什么Devise没有在app/views/devise/mailer/confirmation_instructions.html.haml中使用模板如果我可以编辑我可以手动附加主机:'http://mysite.com/' + confirmation_url(...
我尝试设置范围视图设置但它没有没有任何影响这是一场灾难,用户无法确认他们的注册:(
我添加了项目符号 gem来建议我开发中的任何 N+1 查询(Rails 4.0.2),它建议急切地加载模型的两个父关联,在其中显示其所有记录。
在急切加载这些所属关联之一之前:
Completed 200 OK in 5252ms (Views: 1.8ms | ActiveRecord: 114.1ms)
Run Code Online (Sandbox Code Playgroud)
急切加载后:
Completed 200 OK in 6741ms (Views: 2.1ms | ActiveRecord: 146.0ms)
Run Code Online (Sandbox Code Playgroud)
此外,通过急切加载,浏览器会在控制台显示已完成后挂起,并且在一段时间内(大约 6 秒)不会更新。服务器生产没有这种冻结问题,但在这种情况下,急切加载仍然是一个糟糕的建议。
急切加载会变慢是否有意义?该视图确实访问(预先加载的)父记录。
此外,由于某种原因,子弹宝石不显示调用堆栈。
是否可以在 CSS 中调整bootstrap 图标的大小?图标是 SVG。我在 HTML 中添加图标,而不是通过 CSS。
ruby-on-rails ×10
amazon-s3 ×2
heroku ×2
rspec ×2
amazon-rds ×1
capybara ×1
css ×1
devise ×1
factory-bot ×1
jquery ×1
jquery-ui ×1
mysql ×1
mysqldump ×1
paperclip ×1
poltergeist ×1
rails-bullet ×1
ruby ×1
rubygems ×1
rvm ×1
ssl ×1
svg ×1