小编ssc*_*rus的帖子

如何准备生产网站中的数据丢失?

我正在构建一个快速投入生产的应用程序,我担心由于黑客,一些愚蠢的个人错误(如运行rake db:schema:loadrake db:rollback)或其他情况,我们可能会在一个数据库表甚至整个系统中遭受数据丢失.

虽然我发现上述情况不太可能发生,但如果没有做好准备,我将会失职.

我正在使用Heroku的PG备份(本月将替换为其他内容),我还将自动每日备份运行到S3:http://trevorturk.com/2010/04/14/automated-heroku-backups/,成功生成.dump文件.

处理生产应用程序数据丢失的正确方法是什么?

  1. .dump如果需要,我该如何恢复文件?如果系统的一小部分被击中,我可以进行选择性恢复吗?
  2. 如果无法进行选择性还原:假设一个表在上次备份后4小时丢失数据.Result =>修复丢失的表需要回滚4个小时的用户活动吗?对此有什么好的解决方案?
  3. 如果发生这样的事情,支持用户的最佳方法是什么?

backup ruby-on-rails heroku data-loss ruby-on-rails-3

16
推荐指数
1
解决办法
1237
查看次数

Heroku是否保护个别站点免受DoS/DDoS攻击?

Heroku现在似乎正在遭受DDoS攻击,这导致整个网站出现间歇性可用性问题(当然!)我的应用程序.

我最近看过很多这类攻击,包括几个月前在Register.com上发生的巨大DDoS攻击.

我的问题是,如果攻击者对Heroku的一个客户进行了归零,会发生什么?

Heroku是否保护个人应用免受DoS和DDoS攻击?

ruby-on-rails ddos heroku ruby-on-rails-3

16
推荐指数
2
解决办法
5441
查看次数

在Heroku控制台上运行循环或多行代码

Heroku控制台不会在我的应用程序中运行循环(虽然它们可以在我的本地计算机上运行而且heroku允许采取个别操作).

@companies.each do |c|
SyntaxError: /home/heroku_rack/lib/console.rb:150: syntax error, unexpected $end
@companies.each do |c|
                      ^
/home/heroku_rack/lib/console.rb:140:in `eval'
/home/heroku_rack/lib/console.rb:140:in `_eval'
/home/heroku_rack/lib/console.rb:73:in `block in process_command'
/usr/ruby1.9.2/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
Run Code Online (Sandbox Code Playgroud)

你知道为什么会出现这些错误吗?

console ruby-on-rails heroku ruby-on-rails-3

15
推荐指数
2
解决办法
8710
查看次数

将TextHelper添加到UserMailer

这个问题与以下内容有关:如何在ActionMailer视图中使用我的视图助手?

我有一个UserMailer.rb,我想添加,TextHelper所以我可以使用pluralize(@x, "x").我尝试了一些东西,但似乎没有工作:

class UserMailer < ActionMailer::Base
  1. helper :text
  2. add_template_helper(TextHelper)

3. application.rb
  config.to_prepare do
    ActionMailer::Base.helper "text"
  end
Run Code Online (Sandbox Code Playgroud)

你知道如何在我的电子邮件中使用复数吗?谢谢!

ruby-on-rails actionmailer helper ruby-on-rails-3

15
推荐指数
1
解决办法
2756
查看次数

RESTful设计,如何命名CRUD等人的页面?

我正在开发一个网站,其中有很多页面不属于我对RESTful设计的有限理解,这主要是:

Create, Read, Update, Delete, Show, List
Run Code Online (Sandbox Code Playgroud)

这是一个问题:当页面没有整齐地落入CRUD/show/list时,什么是标记动作/路线的好系统?我的一些页面一次有关于多个表的信息.我正在建立一个网站,在登录后为一些客户提供"基地".它没有给他们任何关于他们自己的信息,所以它不应该是,例如,/ customers/show/1.它确实有关于公司的信息,但网站上还有其他页面以不同的方式执行此操作.遇到这些情况后你会怎么做?这个"家庭基地"向客户展示,它主要有关于公司的信息(但不是唯一的).

第二种情况:我在客户和公司之间有一个名为"匹配"的表.这些匹配在网站的不同部分以完全不同的方式访问(不同的布局,不同的CSS表,访问它们的不同类型的用户等等.它们不能全部匹配/显示.标记其他的最佳方式是什么?

非常感谢.=)

rest action routes ruby-on-rails crud

14
推荐指数
1
解决办法
1302
查看次数

Rails生产服务器:样式表不显示!

我只是从我的开发数据库切换到生产数据库,我意识到我得到了一个一致的错误,无论我试图打开哪个视图.尽管位于正确的位置,样式表仍未正确加载.

以下是有关错误的一些信息:

视图

<head>
<%= stylesheet_link_tag "global", "home", "http://static.flowplayer.org/tools/css/scrollable-navig.css" %>
</head>
Run Code Online (Sandbox Code Playgroud)

安慰

Started GET "/stylesheets/global.css?1287048448" for 127.0.0.1 at 2010-10-15 00:18:43 -0400
Processing by WelcomeController#long_switchboard as CSS
Parameters: {"1287048448"=>nil, "path"=>"stylesheets", "link"=>"global"}
Completed   in 2ms

NoMethodError (undefined method `id' for nil:NilClass):
  app/controllers/welcome_controller.rb:76:in `long_switchboard'
Rendered C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0/lib/action_dispatch/middleware/templates/rescues/_trace.erb (2.0ms)
Rendered C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (7.0ms)
Rendered C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack3.0.0/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (108.0ms)
Run Code Online (Sandbox Code Playgroud)

页面来源

<link href="/stylesheets/global.css?1287048448" media="screen" rel="stylesheet" type="text/css" />  
<link href="/stylesheets/home.css?1287086704" media="screen" rel="stylesheet" type="text/css" />  
<link href="http://static.flowplayer.org/tools/css/scrollable-navig.css" media="screen" rel="stylesheet" type="text/css" />    
Run Code Online (Sandbox Code Playgroud)

当我尝试从页面源打开"全局"和"主页"样式表时,它们不会打开.我尝试将"public /"添加到URL,但它说没有路由匹配.

地点

所有非http样式表都在root/public/stylesheets /中

路线

最后两条路线是"全能",仅限于网站上的特定功能.这些似乎正在捕捉我的样式表(也可能是其他标签).

match ':path/:link' …
Run Code Online (Sandbox Code Playgroud)

css production routes ruby-on-rails ruby-on-rails-3

12
推荐指数
1
解决办法
7909
查看次数

Heroku可靠吗?

我已经在Heroku上托管了一个网站几个月,很快就会投入生产.

自从我开始使用它们以来,至少有三次严重的中断,其中一次是亚马逊上个月灾难性的停电,另一次是今天发生的多小时停电.

我相信Heroku的愿景,我认为他们是一个伟大的公司,但我面临着最终的问题:如果他们不能保持网站的运行,我喜欢他们的一切并不重要.

Heroku是在Rails上运行生产站点的可靠提供商吗?

是否还有其他我可能会考虑的提供商,其可靠性比Heroku更好?

ruby-on-rails heroku ruby-on-rails-3

12
推荐指数
3
解决办法
1905
查看次数

HTML - 使用Label编码复选框的正确方法

我一直在使用formtastic来在rails应用程序上生成HTML表单.然而,我的问题实际上与HTML有关.

今天我在formtastic生成复选框(:booleanformtastic lingo上的类型字段)的路上发现了一个奇怪的行为.

其余字段(非复选框)以这种方式生成:

<li>
  <label for="my_textbox_field">My TextBox</label>
  <input id="my_textbox_field" type="text" ... >
</li>
Run Code Online (Sandbox Code Playgroud)

但是,复选框<label>完全包含在其标签内- 如下所示:

<li>
  <label for="my_boolean_field">
    <input id="my_boolean_field" type="checkbox" ... >
    This is my boolean field
  </label>
</li>
Run Code Online (Sandbox Code Playgroud)

Formtastic哲学似乎是基于Learning to Love Forms的演示.实际上,在该演示文稿的幻灯片36上,建议使用该结构用于复选框.我想在演示文稿本身中,演示者解释了为什么这样做了,但它没有写在幻灯片上.

任何人都可以告诉我为什么在他们的<label>标签中包含复选框可能是一个好主意,而不是将它们放在外面,就像文本框一样?

html forms formtastic

11
推荐指数
2
解决办法
9503
查看次数

Rails - 如何基于布尔字段进行搜索?(MySQL错误)

我正在运行以下查询

@projects = @company.projects.where("active = ?", true).order("created_at ASC")
Run Code Online (Sandbox Code Playgroud)

我收到错误:

`ActiveRecord::StatementInvalid: Mysql::ParseError: You have an error in your SQL...`
Run Code Online (Sandbox Code Playgroud)

错误指向= '1'.

我在我的查询上尝试了很多变化,但我无法弄清楚问题.我怎么解决这个问题?

activerecord ruby-on-rails ruby-on-rails-3

11
推荐指数
2
解决办法
1万
查看次数

Rails PostgreSQL使用LIKE进行非区分大小写的搜索

我在我的控制器中有这个:

Konkurrencer.where("title LIKE ?", "%#{params[:q]}%").limit(4)
Run Code Online (Sandbox Code Playgroud)

我认为这个查询区分大小写.它不应该区分大小写.

ruby postgresql ruby-on-rails-3

11
推荐指数
1
解决办法
7787
查看次数