标签: ruby

Rails中是否存在依赖注入?

Rails有MVC方法的事实是否意味着依赖注入?

或者有没有理由我们不讨论Rails中的依赖注入?

如果Rails确实有依赖注入,它包含什么?

ruby spring dependency-injection ruby-on-rails

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

RVM Ruby 1.9.1安装无法找到zlib,但它的运行时和开发库都在那里

尝试在新安装(fedora)上使用RVM启动并运行Ruby 1.9.1.

执行后rvm install 1.9.1,rubygems错误日志显示无法找到zlib

没有这样的文件加载 - zlib(LoadError)

但是,zlib运行时和开发库都已安装并且是最新的.

我此刻对这一点感到有点难过.

ruby rubygems zlib rvm

54
推荐指数
3
解决办法
3万
查看次数

Ruby模块中的常量范围

我在mixin模块中有一个恒定范围的问题.假设我有类似的东西

module Auth

  USER_KEY = "user" unless defined? USER_KEY

  def authorize
    user_id = session[USER_KEY]
  def

end
Run Code Online (Sandbox Code Playgroud)

除非已经定义,否则USER_KEY常量应默认为"user".现在我可以将它混合到几个地方,但在其中一个地方USER_KEY需要不同,所以我们可能会有这样的东西

class ApplicationController < ActionController::Base

  USER_KEY = "my_user"

  include Auth

  def test_auth
    authorize
  end

end
Run Code Online (Sandbox Code Playgroud)

我希望USER_KEY在授权中使用时会是"my_user",因为它已经定义了,但它仍然是"user",取自USER_KEY的模块定义.任何人都知道如何授权使用USER_KEY的类版本?

ruby module ruby-on-rails constants

54
推荐指数
3
解决办法
5万
查看次数

accepted_toted_attributes_for with belongs_to polymorphic

我想建立一个多态关系accepts_nested_attributes_for.这是代码:

class Contact <ActiveRecord::Base
  has_many :jobs, :as=>:client
end

class Job <ActiveRecord::Base
  belongs_to :client, :polymorphic=>:true
  accepts_nested_attributes_for :client
end
Run Code Online (Sandbox Code Playgroud)

当我试图访问Job.create(..., :client_attributes=>{...}给我NameError: uninitialized constant Job::Client

ruby ruby-on-rails polymorphic-associations nested-attributes

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

如何通过反射获得activerecord关联

对于普通列,您可以通过columns类方法获取它们.但是,如果foreign_key在关系方法中设置了选项,则可以将关联命名为完全不同的名称.例如,给定

class Post
  has_many :comments, :foreign_key => :message_id # this is a contrived example
end
Run Code Online (Sandbox Code Playgroud)

如果我这样做Post.column_names我可以得到message_id,但有没有办法得到comments

ruby reflection activerecord

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

是否可以使用Ruby读取文件的修改日期?

是否可以使用Ruby读取文件的修改日期?我已经成功打开了一个文本文件并用它捕获了该文件的内容

File.open("test.txt", "r").each do |line|"
Run Code Online (Sandbox Code Playgroud)

但是阅读文件的修改日期会非常有用.

ruby

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

将数组拆分为红宝石中的相等部分

我需要一种方法将数组拆分为另一个大小相等的数组中的一堆数组.有人有任何方法吗?

例如

a = [0, 1, 2, 3, 4, 5, 6, 7]
a.method_i_need(3)
a.inspect
    => [[0,1,2], [3,4,5], [6,7]]
Run Code Online (Sandbox Code Playgroud)

ruby arrays ruby-on-rails ruby-1.8.7

54
推荐指数
4
解决办法
5万
查看次数

如何使用link_to Ruby在rails上添加确认消息

我想在Ruby上添加link_to函数的确认消息.

= link_to 'Reset message', :action=>'reset' ,:confirm=>'Are you sure?'
Run Code Online (Sandbox Code Playgroud)

任何想法为什么它不起作用?

ruby link-to ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2

54
推荐指数
4
解决办法
6万
查看次数

Rails:基于关联值的ActiveRecord查询

我有2个型号.Report并且Server有一个belongs_to和has_many关系.我创建了一个使用的访问器方法delegate,允许Report找到它的关联Server.company_id.现在,我想运行一个查询Report,允许我查找ReportServer具有特定company_id属性5 的特定属性相关联的所有内容.

这是我的两个型号.是的,我知道当前的查询不起作用,因为Report没有属性company_id.

不,我不想存储company_id内部,Report因为该信息不属于Report.

报告

class Report < ActiveRecord::Base

 belongs_to :server

 delegate :company_id, :to => :server

    class << self

        def method(url, base_url)
            #Report.where(company_id: 5)
        end
    end

end
Run Code Online (Sandbox Code Playgroud)

服务器

class Server < ActiveRecord::Base

 attr_accessible :company_id

 has_many :reports

end
Run Code Online (Sandbox Code Playgroud)

ruby activerecord ruby-on-rails associations

54
推荐指数
3
解决办法
4万
查看次数

在rails 5.1及更高版本中使用什么而不是`render:text`(以及`render nothing:true`)?

Rails 5.1 删除了一大堆以前弃用的方法.其中有老朋友render :text.

当您需要渲染一些文本但不想要视图模板的开销时,它非常有用.例子:

render text: "ok"
render text: t('business_rules.project_access_denied'), status: 401
Run Code Online (Sandbox Code Playgroud)

用什么代替?

ruby ruby-on-rails ruby-on-rails-5

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