草庐IT

foreign_gem

全部标签

ruby-on-rails - 如何在我的 gem 中写入 Rails 记录器

我有一个我写的gem,我在我的Rails应用程序中使用它。我想从我的gem写入railslogger,但显然那里不存在标准railslogger。实现我想做的事情的正确方法是什么? 最佳答案 正如FrederickCheung所说,您应该为您的gem使用命名空间记录器:MyGem.logger。然后将其设置为Railtie中的Rails记录器,以便您的gem在Rails内部和外部都能很好地工作。moduleMyGemclassRailties 关于ruby-on-rails-如何在我的g

Ruby Rake 从 gem 加载任务

我一直在尝试将位于github上的gem添加到我当前的应用程序中。gem有一个我希望能够从我的应用程序访问的rake文件。但我不断收到加载错误。load'tasks/deploy.rake'gem文件看起来像这样#-*-encoding:utf-8-*-require'rake'Gem::Specification.newdo|gem|gem.authors=%w(HelloWorld)gem.email=%w(test@example.com)gem.description='test'gem.summary='test'gem.homepage='https://github.co

ruby-on-rails - Rails - Devise Gem 删除注册和忘记密码模块

我使用Rails4和Devisegem进行用户身份验证,在我的项目中也可以很好地使用Devisegem。但我想删除Signup和ForgotPassword模块的功能。为了删除sign_up,在config/routes.rb文件中使用skip选项,例如,devise:users,:skip=>:registration它删除了sign_up模块也截断了路径生成。这很好。但同样,如果我为Forgotpassword添加此选项devise:users,:skip=>:recoverordevise:users,:skip=>:recoverable那是行不通的。我需要以相同的方法隐藏这两

ruby-on-rails - 为 Ruby on Rails 3.1.0 安装 mysql2 gem

我收到这个错误Gemfileswillremaininstalledin/home/mark/.bundler/tmp/28288/gems/mysql2-0.2.17forinspection.Resultsloggedto/home/mark/.bundler/tmp/28288/gems/mysql2-0.2.17/ext/mysql2/gem_make.outAnerroroccuredwhileinstallingmysql2(0.2.17),andBundlercannotcontinue.Makesurethatgeminstallmysql2-v'0.2.17'succ

ruby - Errno::EACCES:通过 gitlab 安装 gems 时权限被拒绝

我正在尝试设置gitlab并因此使用sudo从另一个用户帐户安装一些gem,但我经常收到Permissiondenied错误。sudo-ugitlab-Hbundleinstall--deployment--withoutdevelopmenttestpostgres>Using...(alotofsuccessfulgemsthere)>Usingpygments.rb(0.3.2)fromhttps://github.com/gitlabhq/pygments.rb.git(atmaster)>Errno::EACCES:Permissiondenied-pygments.rb-0

ruby - 如何使 gem install 命令仅在未安装或需要更新时安装

我已经阅读了ruby​​gems站点的文档,但我猜想“geminstall”命令总是重新安装、重新编译所有内容,即使已经安装了相同的版本也是如此。如何让geminstall命令只在需要的时候安装? 最佳答案 看起来--conservative标志将使gem命令执行您想要的操作。geminstallrake--conservative来自文档geminstall--help:--conservativeDon'tattempttoupgradegemsalreadymeetingversionrequirement

ruby - 无法安装 JSON gem

我需要安装json,因为我收到此错误:无法在任何来源中找到json-1.4.6我运行了geminstalljson和bundleinstall但我只能在需要json-1.4.6时安装json-1.5.1我的gemfile中有gem'json','1.4.6',所以我不确定发生了什么...更新我收到这个错误:正在安装json(1.4.6)/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1216:in`chmod':不允许操作-/Library/Ruby/Gems/1.

ruby-on-rails - 如何检查准备好更新的 gem ?

如何检查准备好更新的gem,而不更新它们? 最佳答案 如果您没有使用bundler,只需运行gemoutdated,它会给您一个过时的gem列表。输出示例:$gemoutdatedacts_as_tree(2.7.1 关于ruby-on-rails-如何检查准备好更新的gem?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/11593091/

ruby - Gemfile 中可以有多个版本的 gem 吗?

我想要的是这样的:gem'rack','1.3.3','1.2.4'这样当gems需要不同版本的rack时,都被安抚了。这可能吗? 最佳答案 您可以设置允许的gem间隔gem'rack','1.2.4'它将加载所选间隔内最实际的一个。但我认为您不能要求不同的gem版本。如果一个gem将以不同的版本加载,每个类和模块都必须拥有自己的命名空间,以避免覆盖gem的方法。 关于ruby-Gemfile中可以有多个版本的gem吗?,我们在StackOverflow上找到一个类似的问题:

ruby - 执行 gem 时,未知命令

每当我输入gem命令时,例如gem"tilt"或gem"mysql"我收到这个错误:Whileexecutinggem...Unknowncommandtilt当我运行gemlist时,tilt和mysql都出现在列表中,因此它们已安装。事实上,我对列表中的每一项都遇到了这个错误。可能是什么原因造成的? 最佳答案 gem没有骗你,它们不是有效的gem命令。也许您将命令行与Bundler混淆了?例如,添加gem"tilt"到Gemfile并运行bundleinstall将安装tilt。但是Bundler使用它自己的语法,而不是shel