小编orj*_*jan的帖子

嵌套的content_tag在简单的帮助器中抛出未定义的方法`output_buffer =`

我正在尝试创建一个简单的视图助手,但是当我尝试嵌套几个内容标签时它会抛出

NoMethodError: undefined method `output_buffer=' for

def table_for(list, &proc)
  t = Table.new
  proc.call(t)
  t.render_column(list) 
end

class Table
  include ActionView::Helpers::TagHelper

  attr_accessor :columns, :block

  def initialize
    @columns = Array.new
  end

  def col(name)
    @columns << name
  end

  def render_column(list)
    content_tag :table do
      list.each do |c|
        content_tag :td, c
      end
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

什么是错的任何提示?我也看到有一个XmlBuilder对我的目的更好吗?

ruby-on-rails-3

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

将命令行参数注入psake

我想将命令行参数注入到我的psake构建脚本中,如:.\ build.ps1 Deploy environment ="development"

但psake会将每个论点视为一个任务,并将回答"任务不存在"

是否可以在psake中注入命令行参数?

build.ps1 -->
Import-Module '.\psake.psm1'
Invoke-psake '.\tasks.ps1' $args
Remove-Module psake
Run Code Online (Sandbox Code Playgroud)

powershell psake

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

管理存储在github上的开源rails 3应用程序的安全性

作为rails,开源的新手,很快就可以部署到生产环境,我有一些安全考虑因素.

如何处理database.yml非常好,如何管理rails-database-yml

但是从我的角度来看,普通的rails应用程序中有更多的配置设置,不应该托管在公共github存储库中并部署到生产中,例如

  • devise.rb - > config.pepper
  • secret_token.rb - > Application.config.secret_token
  • capistrano - > deploy.rb
  • ...

将config/****/*添加到.gitignore不仅会阻止新开发人员进行捆绑安装,db:create,db:migrate,rails服务器,而且如果带有初始化程序的新gem,则还可以使生产配置保持最新状态安装.

另一种可能性是添加一个带有敏感配置的environment.yml,比如database.yml,初始值设定项中的敏感配置会被覆盖吗?

这样可以在清理结账后轻松启动和运行,并且生产环境易于维护.

任何想法如何解决我上面的问题?

open-source capistrano ruby-on-rails github

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

上传图像到文件系统的版本控制

在阅读DB中存储图像后 - 是啊还是不?我认为文件系统是存储图像的正确位置.但我想知道您如何处理不同环境(dev/stage/prod)中上传图像的备份/版本控制以及网络负载平衡?

使用数据库时,这些问题非常容易处理,例如,从生产环境进行备份,并在开发环境中恢复数据库.

您如何使用git来处理上传文件的版本控制,例如?

生产环境:

  • 图像将上载到Web服务器的共享文件夹.
  • 元数据存储在数据库中
  • 该映像会自动添加到git存储库中

开发人员在工作:

  • 检查源代码.
  • 运行脚本以还原数据库.
  • 运行脚本以获取最新图像.

我认为上面的解决方案对于开发人员来说非常顺利,图像将受版本控制,并且环境可以相互隔离.

version-control image

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