Tag: rubygems

在主应用程序中扩展Rails 3引擎的控制器

我在我的应用程序中使用Rails引擎作为gem。 引擎有PostsController ,有很多方法,我想在我的主应用程序中扩展控制器逻辑,例如添加一些方法。 如果我只是在主应用程序中创建PostsController ,则不会加载引擎的控制器。 有一个解决方案提出了Rails引擎,它基于改变ActiveSupport::Dependencies#require_or_load来扩展function 这是唯一/正确的方法吗? 如果是,我在哪里放这段代码? EDIT1: 这是Andrius为Rails 2.x 建议的代码 module ActiveSupport::Dependencies alias_method :require_or_load_without_multiple, :require_or_load def require_or_load(file_name, const_path = nil) if file_name.starts_with?(RAILS_ROOT + ‘/app’) relative_name = file_name.gsub(RAILS_ROOT, ”) @engine_paths ||= Rails::Initializer.new(Rails.configuration).plugin_loader.engines.collect {|plugin| plugin.directory } @engine_paths.each do |path| engine_file = File.join(path, relative_name) require_or_load_without_multiple(engine_file, const_path) if File.file?(engine_file) end end require_or_load_without_multiple(file_name, const_path) end end

Ruby’require’正在抛出NoMethodError,堆栈跟踪显示Windows机器上的Unix路径

试图运行ruby脚本,但它在’require’语句中失败,抛出一个奇怪的错误: 码: require “rubygems” require “bundler/setup” require_relative “plugins/pivotal_rabbitmq_plugin/pivotal_rabbitmq_plugin.rb” require “newrelic_plugin” module PivotalAgent NewRelic::Plugin::Config.config_file=File.dirname(__FILE__) + “/config/newrelic_plugin.yml” NewRelic::Plugin::Run.setup_and_run end 命令: ruby pivotal_agent.rb 错误: /usr/share/rubygems/rubygems/path_support.rb:78:in `path=’: undefined method `+’ for nil:NilClass (NoMethodError) from /usr/share/rubygems/rubygems/path_support.rb:34:in `initialize’ from /usr/share/rubygems/rubygems.rb:325:in `new’ from /usr/share/rubygems/rubygems.rb:325:in `paths’ from /usr/share/rubygems/rubygems.rb:348:in `path’ from /usr/share/rubygems/rubygems/specification.rb:872:in `dirs’ from /usr/share/rubygems/rubygems/specification.rb:750:in `stubs’ from /usr/share/rubygems/rubygems/specification.rb:938:in `find_inactive_by_path’ from /usr/share/rubygems/rubygems.rb:186:in `try_activate’ from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:126:in […]

如何在页面加载时停止显示闪存错误消息,直到在轨道上的ruby中单击按钮后?

我正在试图找出一种方法来阻止此Flash消息在页面加载时显示: class SearchesController < ApplicationController def index @users = User.search params[:search] @default_image = "/assets/default_avatar.jpg" if @users.empty? || params[:search].blank? flash[:error] = "Sorry no user(s) found!" if @users.empty? flash[:error] = "Please give us something to search for!" if params[:search].blank? render 'index' end end end 我明白为什么它显示(显然当访问页面时,搜索参数已经是空白)。 在ruby轨道上必须有一些技巧,我可以在这个flash消息上使用它来阻止它点击,直到点击搜索按钮,例如 flash[:error] = “Please give us something to search for!” if params[:search].blank? […]

Rubygems被Norton DNS阻止

我跑了 $ gem fetch -V github-linguist GET http://rubygems.org/latest_specs.4.8.gz 302 Moved Temporarily GET http://production.s3.rubygems.org/latest_specs.4.8.gz 200 OK ERROR: While executing gem … (Zlib::GzipFile::Error) not in gzip format 然后我震惊地在浏览器中打开链接并看到此消息 诺顿DNS 恶意网站被阻止 您试图访问:production.s3.rubygems.org 这是一个已知的恶意网站。 建议您不要访问 这个网站。 这个站点指向production.s3.rubygems.org.s3.amazonaws.com, 这是恶意的。 在铅笔的建议下,我运行了namebench并切换到了OpenDNS-2。

bundle无法加载这样的文件bundler-1.17.1 / exe / bundle

我遇到了FileUtils的问题,我不得不卸载gem。 在这之后,我做了gem update –default并且一些gem已经更新。 这解决了FileUtils的问题,但现在,捆绑包已经死了。 如果我尝试bundle info xxx我收到此错误: Traceback (most recent call last): 1: from /Users/robin/.gem/ruby/2.5.1/bin/bundle:23:in `’ /Users/robin/.gem/ruby/2.5.1/bin/bundle:23:in `load’: cannot load such file — /Users/robin/.rubies/ruby-2.5.1/lib/ruby/gems/2.5.0/gems/bundler-1.17.1/exe/bundle (LoadError) ruby 2.5.1p57 gem 2.7.7 Rails 5.2.1 我正在使用chruby,我安装了Ruby 2.5.0和2.5.1。 我试图卸载bundler并重新安装它,但这不起作用。 现在,即使我尝试使用gem install bundler , ~/.rubies/ruby-2.5.1/lib/ruby/gems/2.5.0/gems/文件夹中也没有目录。 但是,我安装它时没有错误: gem install bundler Successfully installed bundler-1.17.1 Parsing documentation for bundler-1.17.1 Done installing documentation for […]

rails中的Active_Model错误

我回到了我正在处理的rails项目,命令“rails s”开始失败。 终端建议我运行捆绑安装。 当我这样做时,我收到以下消息: Bundler could not find compatible versions for gem “activemodel”: In Gemfile: protected_attributes (>= 0) ruby depends on activemodel (= 4.0.0.beta) ruby rails (>= 0) ruby depends on activemodel (3.2.12) 我已经更新了ruby和rails。 我重新安装了活动模型并重新启动了我的终端。 我的gems文件非常简单: gem ‘rails’ gem ‘jquery-rails’ gem ‘devise’ gem ‘simple_form’ gem ‘protected_attributes’ group :production do gem ‘pg’ end group :development, :test […]

$ gem install rails失败。 任何解决方法?

我出于某种原因在OS X Lion上安装Rails时遇到问题… 在RVM下安装…… $ gem install rails ERROR: While executing gem … (Gem::RemoteFetcher::FetchError) bad response Forbidden 403 (http://production.cf.rubygems.org/gems/rdoc-3.12.gem) $ gem environment RubyGems Environment: – RUBYGEMS VERSION: 1.8.12 – RUBY VERSION: 1.9.3 (2011-10-30 patchlevel 0) [x86_64-darwin11.2.0] – INSTALLATION DIRECTORY: /Users/ethan/.rvm/gems/ruby-1.9.3-p0@mtc_apps – RUBY EXECUTABLE: /Users/ethan/.rvm/rubies/ruby-1.9.3-p0/bin/ruby – EXECUTABLE DIRECTORY: /Users/ethan/.rvm/gems/ruby-1.9.3-p0@mtc_apps/bin – RUBYGEMS PLATFORMS: – ruby – x86_64-darwin-11 […]

任何人都可以推荐一个用于搜索的gem,它实际上允许我轻松地在轨道上的ruby中过滤我的结果吗?

在指向那个方向后我尝试思考狮身人面像,简单的过滤似乎是不可能的。 我已经用Google搜索了2天的问题并且似乎无法做到这令人震惊,因为这是在网站上搜索时常见的事情。 我只想在搜索表单中添加过滤选项,例如过滤一个或多个组合: 当用户点击浏览页面时,将返回所有网站用户,但每页显示20个结果 过滤选项 在:位置 谁是:性取向 年龄间:年龄范围 和位于:国家 我的搜索页面工作正常,因为我需要的是用户通过电子邮件,用户名或全名查找用户的1个文本字段。 我的浏览页面是一个不同的故事,因为我使用的是一个包含多个文本字段和一个或两个选择字段的表单。 例 有没有一个gem可以轻松地做到这一点并同时表现良好? 或者通过查找方法手动执行此操作是唯一的方法吗? 亲切的问候

用户中的NoMethodError#unsubscribe

我正在努力实现我的rails邮件的取消订阅链接。 不幸的是,我的代码打破了这个: 用户中的NoMethodError#unsubscribe – nil的未定义方法`unsubscribe_hash’:NilClass 它指向/app/views/users/unsubscribe.html.erb第3行 Unsubscribe from Mysite Emails By unsubscribing, you will no longer receive email… 我的user_controller如下所示 class UsersController < ApplicationController protect_from_forgery def new @user = User.new end def create @user = User.new(secure_params) if @user.save flash[:notice] = "Thanks! You have subscribed #{@user.email} for Jobs Alert." else flash[:notice] = 'Error Subscribing! Kindly check your […]

捆绑安装错误json gem

我在rails v 5.1.6(Ruby版本2.5.0)上遇到了ruby的以下问题,大多数时候我尝试在从github下载的rails项目上运行命令bundle install,我收到以下错误。 Fetching gem metadata from http://rubygems.org/………. Using rake 0.8.7z Using abstract 1.0.0 Using activesupport 3.0.7 Using builder 2.1.2 Using i18n 0.5.0 Using activemodel 3.0.7 Using erubis 2.6.6 Using rack 1.2.8 Using rack-mount 0.6.14 Using rack-test 0.5.7 Using tzinfo 0.3.37 Using actionpack 3.0.7 Using mime-types 1.23 Using polyglot 0.3.3 Using treetop 1.4.14 Using […]