草庐IT

prog_name

全部标签

ruby-on-rails - Rails 中的嵌套模块打破 table_name_prefix

我试图在Rails应用程序中一致地使用嵌套模块/类定义,而不是紧凑的(::)语法。但是,它并不总是加载包含table_name_prefix的模块文件本身。在Ruby2.1.1上使用Rails4.1.8...railsnewmy_app...railsgscaffoldUserrailsgscaffoldBlog::Post这会创建app/models/blog.rb:moduleBlogdefself.table_name_prefix'blog_'endend似乎有很多方法可以意外阻止Rails自动加载blog.rb。最简单的例子是通过助手。将app/helpers/blog/po

ruby-on-rails - 运行 'rake assets:precompile' 产生错误 : '` @application. css' is not allowed as an instance variable name'

我正在开发一个Rails3.2应用程序,我正在尝试测试预编译我的Assets,以便在我将我的应用程序投入生产时使用。该应用程序在开发中运行良好,但当我运行时:bundleexecrakeassets:precompile我收到以下错误:rakeaborted!`@application.css'isnotallowedasaninstancevariablename我搜索了我的代码,没有对application.css的引用,当然除了那个名称的文件(以及偶尔的评论)。我也试过在生产模式下设置config.assets.compile=true,但也失败了(应用服务器启动正常,但在pro

ruby-on-rails - 如何使 named_scope 与连接表一起正常工作?

这是我的情况。我有两个表:质押和质押交易。当用户做出promise时,他在promise表中只有一行。稍后当需要履行promise时,每笔付款都会记录在我的pledge_transactions表中。我需要能够查询到所有未结质押,即交易表中的金额之和小于质押金额。这是我目前所拥有的:named_scope:open,:group=>'pledges.id',:include=>:transactions,:select=>'pledge_transactions.*',:conditions=>'pledge_transactions.idisnotnullorpledge_trans

ruby-on-rails - 添加设备生成的用户表时,Rails 数据库迁移失败并显示 "duplicate column name: email"

我正在安装devise。我遵循了所有必需的步骤并在此处结束:$railsgeneratedeviseUser$rakedb:migrate当我运行rakedb:migrate时,出现以下错误:$rakedb:migrate==20140618020442AddDeviseToUsers:migrating=================================--change_table(:users)rakeaborted!StandardError:Anerrorhasoccurred,thisandalllatermigrationscanceled:SQLite3::

ruby - 如何在 Rack/测试中设置 env ['SERVER_NAME' ]?

在Sinatra测试中,env['SERVER_NAME']默认为www.example.com.我如何将其设置为某个任意域?capybara有.default_host方法,但不使用capybara。或者,是否可以更改env[DEFAULT_HOST]?使用RSpec、Sinatra、WebMock。编辑:添加env['SERVER_NAME']='www.foo.com'RSpec测试引发异常:NameError:undefinedlocalvariableormethod'env'for# 最佳答案 env助手只能在Sinat

ruby - 这个 Ruby 语法是什么意思:if self < Class::Name?

我遇到了这种我以前从未见过的奇怪语法:ifself这检查了什么? 最佳答案 它检查self是否是Example::Class::Name的子类查看Moduledocs:) 关于ruby-这个Ruby语法是什么意思:ifself https://stackoverflow.com/questions/21034048/

ruby-on-rails - NilClass :Class 的未定义方法 'model_name'

浏览器在Locals#show中返回以下错误:NilClass:Class的未定义方法'model_name'51:52:53:54:这是我的locals_controller.rb(显示Action)defshow@local=Local.find(params[:id])@foods=@local.foods.paginate(page:params[:page])respond_todo|format|format.html#show.html.erbformat.json{renderjson:@local}end结束这里是foods_controller.rb(创建操作)de

ruby - Gem axlsx 如何设置字体 font_name?

我使用axlsxgem来处理xlsx文件。请帮我在工作表的单元格中设置字体。item_style=s.add_style:b=>false,:sz=>9,:font_name=>'courier',:alignment=>{:horizontal=>:left,:vertical=>:center,:wrap_text=>true}row=sheet.add_row[item.name,item.price],:style=>item_style但单元格中的字体仍然是“宋体”。我需要任何“单宽度”字体。我知道'courier'不是单宽字体,仅用作示例。因为我有固定的列宽。我想知道单元格

ruby-on-rails - 如何对所有 ActiveRecord 模型使用通用的 named_scope

你好,如何构建对所有模型通用的命名范围。 最佳答案 我通过将这段代码放在lib/has_common_named_scopes.rb中来做到这一点:moduleHasCommonNamedScopesdefself.included(base)base.class_eval{#Namedscopesnamed_scope:newest,:order=>"#{base.table_name}.created_atDESC"named_scope:freshest,:order=>"#{base.table_name}.updated_

ruby - `&method(:method_ name)` 在 ruby 中是什么意思?

我试图创建一个具有私有(private)类方法的类。我希望可以在实例方法中使用此私有(private)类方法。以下是我的第一次尝试:classAnimalclassAnimal.public_class_greeter('John')工作正常,打印Johngreetsprivateclassmethod。但是,Animal.new.public_instance_greeter("John")抛出错误:NoMethodError:privatemethod'private_class_greeter'calledforAnimal:Class。这是预期的,因为调用self.class.