ActionController::RoutingError当用户尝试访问非现有路由时,我有一个例外.如何将用户重定向到404.html页面或在该页面上呈现错误?
例如:当我尝试访问https://github.com/someuser时,我在该URL上获得了404页面.
我在应用程序控制器中尝试过这个但没有成功:
rescue_from ActionController::RoutingError do |exception|
render '/public/404.html'
end
Run Code Online (Sandbox Code Playgroud) 每5分钟ping一次20个网站列表的最佳方法是什么(例如),以便知道网站是否以HTTP 202响应?
毫无疑问的想法是将20个URL保存在数据库中,然后运行数据库并ping每个数据库.但是,当一个人没有回答时会发生什么?之后会发生什么?
此外,还有更好但却没有脑力的解决方案吗?我担心这个列表可以增长到20000个网站,然后没有足够的时间在我需要ping的5分钟内对它们进行ping操作.
基本上,我正在描述PingDom,UptimeRobot等人的工作方式.
我正在使用node.js和Ruby on Rails构建这个系统.我也倾向于使用MongoDB来保存所有ping的历史记录并监控结果.
建议?
谢谢你!
ruby-1.9.2-p180 :007 > Factory.define :user do |user|
ruby-1.9.2-p180 :008 > user.email "user@example.com"
ruby-1.9.2-p180 :009?> user.password "foobar"
ruby-1.9.2-p180 :010?> user.password_confirmation "foobar"
ruby-1.9.2-p180 :011?> end
NameError: uninitialized constant Factory
Run Code Online (Sandbox Code Playgroud)
我的Gemfile:
group :test do
gem "rspec-rails"
gem 'webrat', '0.7.1'
gem 'spork', '0.9.0.rc4'
gem 'factory_girl_rails'
end
Run Code Online (Sandbox Code Playgroud)
即使很难看似我拥有应有的一切,我仍然会遇到这个错误.我也创建了factory.rb.
谢谢
我有2个型号,User和Bucket.User has_many Buckets和Bucket belongs_toa User.
在factories.rb,我有:
Factory.define :user do |user|
user.email "teste@test.com"
user.password "foobar"
user.password_confirmation "foobar"
end
Factory.sequence :email do |n|
"person-#{n}@example.com"
end
Factory.define :bucket do |bucket|
bucket.email "user@example.com"
bucket.confirmation false
bucket.association :user
end
Run Code Online (Sandbox Code Playgroud)
我有一个login_user模块,如下所示:
def login_user
before(:each) do
@request.env["devise.mapping"] = Devise.mappings[:user]
@user = Factory.create(:user)
#@user.confirm!
sign_in @user
end
end
Run Code Online (Sandbox Code Playgroud)
我正在使用Spork和Watch,我Buckets_controller_spec.rb很简单:
describe "User authenticated: " do
login_user
@bucket = Factory(:bucket)
it "should get index" do
get 'index' …Run Code Online (Sandbox Code Playgroud) 我怎样才能将TDD与MongoDB一起用作我的第二个数据库?
谢谢
编辑:
使用Rspec或其他允许我测试它的东西.
我有一个Ruby脚本,我需要在我的Linux机器中一直运行.我试过nohup ruby ruby.rb&但似乎它不起作用.
如何让脚本在后台运行?
我正在考虑使用MongoDB作为我的主数据库.但是,我的应用程序完全使用JavaScript,我想使用REST API,客户端.
我仍然无法理解我可以使用哪些安全机制来对数据库进行JS调用而不向所有用户显示所有数据.
请就此事提出建议.
问候,唐纳德
我想知道在node.js上创建框架需要哪些步骤.我相信这可以是一种学习的好方法,这就是我这样做的原因!
我一直在检查其他微框架和更大的框架,但我无法理解从哪里开始.我希望你对此提出建议.谢谢.
编辑:MVC框架,如Sinatra,Merb,Rails.
我有一个在Heroku上运行的Rails 3应用程序,我也安装了SSL并正常工作.但是,我的用户仍然可以在没有https的情况下访问该站点.如何确保使用https访问所有网址?
谢谢
编辑:
我已经尝试将其添加到application_controller.rb
before_filter :redirect_to_ssl
def redirect_to_ssl
redirect_to url_for params.merge({:protocol => 'https://'})
end
Run Code Online (Sandbox Code Playgroud)
但是我收到一个Error 310 (net::ERR_TOO_MANY_REDIRECTS)错误.
我正在构建一个复杂的Web应用程序,它必须使用实时数据并向用户显示数据.
鉴于我已经习惯了Rails,我想知道转储rails是否有很大的优势并使用node.js构建应用程序,或者如果有办法我可以在Rails中获得Node.js的实时优势.
更好的是能够使用Node.js和Rails.这有可能吗?
谢谢
node.js ×3
ruby ×3
factory-bot ×2
javascript ×2
mongodb ×2
rspec2 ×2
frameworks ×1
heroku ×1
pingdom ×1
real-time ×1
rspec ×1
rspec-rails ×1
ssl ×1
tdd ×1