小编Dou*_*oug的帖子

在Rails中,我应该如何为任务应用程序实现状态字段 - 整数还是枚举?

对于Rails 3.0 Todo应用程序,我有一个带有Status字段的Tasks模型.存储状态字段数据(字段类型)的最佳方法是什么,并且仍然在视图(HTML表格)中显示人类可读的版本?状态可以是:

0 =正常
1 =有效
2 =已完成

现在我有这个:

Rails架构在这里:

create_table"tasks",:force => true do | t |
t.integer"status",:limit => 1 ,: default => 0,:null => false

Rails模型在这里:

class Task < ActiveRecord::Base
  validates_inclusion_of :status, :in => 0..2,
    :message => "{{value}} must be 0, 1, or 2"
Run Code Online (Sandbox Code Playgroud)

Rails在这里查看:

<h1>Listing tasks</h1>

<table>
  <tr>
    <th>Status</th>
    <th>Name</th>
    <th></th>
    <th></th>
    <th></th>
  </tr>

<% @tasks.each do |task| %>
  <tr>
    <td><%= task.status %></td>
    <td><%= task.name %></td>
    <td><%= link_to 'Show', task %></td>
    <td><%= link_to 'Edit', edit_task_path(task) …
Run Code Online (Sandbox Code Playgroud)

html enums ruby-on-rails rails-models

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

TFS 2008/2010与Jenkins的持续集成

有没有人有使用TFS 2008/2010和Jenkins进行持续集成(CI)的特定经验?我们正在尝试决定使用哪个CI服务器.我们的团队专门在Microsoft .NET/Visual Studio 2010/C#中工作.我们有以下要求:

  1. 每次签入时自动构建我们的Web项目.
  2. 每次构建运行单元测试.
  3. 自动将绿色构建部署到开发和/或测试环境.
  4. 提供漂亮的报告.
  5. 通过电子邮件提供构建/部署通知.

我意识到安装工具不一定能为我们提供开箱即用的功能,而且我们必须与MSBuild等其他工具集成才能实现这一目标.

我正在寻找Jenkins具有TFS 2008/2010不具备的特定功能,反之亦然.还有哪些更容易维护,使用等

tfs continuous-integration tfs2008 tfs2010 jenkins

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

如何指示AWS ELB考虑将403代码恢复成功的运行状况检查?

我在一个私有的EC2 VPC子网中有一个Jenkins CI服务器,为了让它可以从外部访问我已经设置了一个ELB(它也使用IAM处理HTTPS安全证书,但这只是为什么的理由我这样做而不是直接访问单个实例).

Jenkins服务器配置为要求身份验证,因此当ELB作为匿名用户进行健康检查时,它会获得403访问禁止页面,这应该完全正常,但是被理解为错误并且将实例标记为停止服务.

有没有办法让ELB将403响应视为OK响应?或者也许在Jenkins中有一个总是返回200状态代码的页面?

amazon-ec2 amazon-web-services jenkins amazon-elb

8
推荐指数
2
解决办法
4084
查看次数

在Sinatra,提供iPhone布局与正常布局的最佳方式是什么?

我正在编写一个Sinatra应用程序,需要根据用户是使用iPhone还是常规浏览器来呈现不同的布局.我可以使用Rack-Mobile-Detect检测浏览器类型,但我不确定告诉Sinatra使用哪种布局的最佳方式.

此外,我有一种感觉,我如何选择这样做也可能会破坏页面缓存.真的吗?

示例代码:

require 'sinatra/base'
require 'haml'
require 'rack/mobile-detect'

class Orca < Sinatra::Base

  use Rack::MobileDetect

  helpers do
    def choose_layout
      if request.env['X_MOBILE_DEVICE'] == :iPhone
        # use iPhone layout
      else
        # use normal layout
      end
    end
  end

  before do
    # should I use a before filter?
    choose_layout()  
  end

  get '/' do
    haml :home # with proper layout
  end

end #Class Orca
Run Code Online (Sandbox Code Playgroud)

ruby iphone layout before-filter sinatra

7
推荐指数
1
解决办法
2849
查看次数

如何根据环境设置facebook身份验证密钥?

我有一个rails应用程序,使用omniauth通过Facebook验证访问者.

当您在Facebook上注册应用程序时,您必须注册一个回调URL,一旦完成身份验证过程,他们将重定向到该回调URL.

由于我的生产站点托管在与我的开发环境不同的服务器上,因此我需要在Facebook上注册2个不同的URL.我通过注册两个应用程序,即实时版本和开发版本来完成此操作.

当然,我有两个app_ids和两个app_secrets,我的Rails应用程序需要使用它们.

如何将OmniAuth设置为在开发环境中使用一组密钥而在生产环境中使用另一组密钥?

我试图在我的/ config/environments目录中设置我的密钥,如下所示:

# development.rb
SampleApp::Application.configure do
  config.omniauth_keys.facebook.app_id = "32423423"
  config.omniauth_keys.facebook.api_key = "324234324234324"
  config.omniauth_keys.facebook.app_secret = "242343424234324324234324"
end

# production.rb
SampleApp::Application.configure do
  config.omniauth_keys.facebook.app_id = "7657566"
  config.omniauth_keys.facebook.api_key = "7756765765756757"
  config.omniauth_keys.facebook.app_secret = "65756767567567567757"
end
Run Code Online (Sandbox Code Playgroud)

然后在/config/initializers/omniauth.rb中

Rails.application.config.middleware.use OmniAuth::Builder do 
  keys = SampleApp::Application.config.omniauth_keys

  # ==> OmniAuth Provider Credentials
  #                   APP_ID                SECRET_ID
  provider :facebook, keys.facebook.app_id, keys.facebook.app_secret
end
Run Code Online (Sandbox Code Playgroud)

但我明白了

`method_missing': undefined method `omniauth_keys'
Run Code Online (Sandbox Code Playgroud)

当我尝试启动开发服务器时,我猜是因为在/ emvironments/*之前加载了omniauth.rb?

我怎么设置它?

编辑:这是一个更详细的错误消息

=> Booting WEBrick
=> Rails 3.0.4 application starting in development on http://0.0.0.0:3000
=> Call with …
Run Code Online (Sandbox Code Playgroud)

facebook ruby-on-rails omniauth ruby-on-rails-3

6
推荐指数
1
解决办法
2458
查看次数

在Mac OS X 10.5上维护更新的Git二进制文件(Git by Git)的最佳实践?

在我的Mac OS X 10.5(Leopard)机器上,我使用Google Code中的git-OSX-Installer安装了Git 1.6.0.2 .安装程序将Git安装到/ usr/local/Git.

我现在想跟上最新稳定的Git版本(Master分支),目前是1.6.0.3.

我可以在/ usr/local/Git目录中运行"git clone git://git.kernel.org/pub/scm/git/git.git",然后使用XCode运行配置/生成/安装,或者不会工作?

基本上我正在寻找最佳实践,以保持Git更新到最新的稳定版本.

git macos

5
推荐指数
2
解决办法
1678
查看次数

使用 Ruby 的 Yard doc 工具,我可以将 Yard 配置为*不*按字母顺序放置方法吗?

我正在开发一个 Ruby 编程教程,我想用Yard记录它。默认情况下,Yard 将模块/类中的所有方法按字母顺序排列。但是,由于本教程中每个模块中的方法都是建立在彼此之上的,因此我希望按照我编写它们的顺序保留它们。

有没有办法将 Yard 配置为按字母顺序放置方法?

ruby documentation yard

5
推荐指数
1
解决办法
595
查看次数

关注Subversion存储库Trunk的最佳实践:Git(镜像),Git-Svn,Subversion?

我想签出,然后根据需要更新Mac OS X Leopard 10.5.5机器上的Django Subversion主干.

我只对在Mac上更新Django代码感兴趣.我对为Django项目提供补丁不感兴趣.我不需要Django主干的Subversion历史记录.

我计划将Git用作我所有个人项目的DVCS/SCM.


使用最新的Django主干保持我的Mac更新的最佳做法是什么?为什么?

我是Git的新手,所以理解为什么选择你的选项会非常有帮助.

  1. 使用我的Mac上安装的Subversion 1.4.4:svn co http://code.djangoproject.com/svn/django/trunk/.基本上使用Subversion为我的个人项目获取Subversion repos和Git.

  2. 使用Git SVN获取Django Subversion repo.关于如何为Git新手做这个的说明?

  3. 使用Git获取Django仓库Git镜像.我有点担心镜子可能会在将来消失,但如果它是最好的选择,我愿意使用它.

svn git django git-svn

3
推荐指数
1
解决办法
3692
查看次数

在Rails 3中使用Cucumber/Capybara,如何设置自定义User-Agent字符串?

在我的Rails 3应用程序中,我对iPhone和桌面浏览器有不同的布局.我正在尝试使用Cucumber/Capybara测试iPhone布局.到目前为止,我在请求的HTTP标头中设置iPhone User-Agent字符串的所有尝试都失败了.

我已经使用Cucumber和Capybara教程跟踪了测试自定义头文件和ssl,但它似乎没有在HTTP请求中设置User-Agent字符串.

如果我只是使用我的iPhone浏览我的Rails应用程序,我会得到正确的布局.我正在使用Rack-Mobile-Detect将Rails request.format设置为:iphone.

关于如何使这项工作的任何想法?我准备放弃Capybara并回到Webrat.

这是我到目前为止所拥有的:

Feature: Detect Browser
  In order to have different layouts for iPhone vs. desktop browsers
  As a developer
  I want to show different layouts for different browsers

Scenario: Show home page with desktop layout 
  Given I am using "a desktop browser"
  When I go to "the home page"
  Then I should see "desktop browser"

Scenario: Show home page with iPhone layout
  Given I am using "mobile safari" …
Run Code Online (Sandbox Code Playgroud)

testing ruby-on-rails http cucumber capybara

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

Xcode 4是否已准备好进行iOS开发或仍处于测试阶段?

我刚刚开始iOS/iPhone开发,我想开始使用XCode 4而不是XCode 3.2.XCode 4的稳定/功能是否足以开始iPhone开发,还是应该坚持使用XCode 3.2?

xcode ios

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