Tag: mysql

由于“mysql2”gem,我无法运行“bundle update”

我在Gemfile中有这个: gem ‘mysql2’ 但是当我运行bundle update时 ,我收到以下错误消息: An error occurred while installing mysql2 (0.3.16), and Bundler cannot continue. Make sure that `gem install mysql2 -v ‘0.3.16’` succeeds before bundling. 我试着把它移到生产部分,像这样: group :production do gem ‘mysql2’ end 但是在运行bundle更新后 ,结果是一样的。 此部分仅在生产模式下处理,还是不处理? 如何摆脱localhost上的此错误消息? 编辑:整个错误消息: Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /Users/radek/.rvm/rubies/ruby-1.9.3-p385/bin/ruby extconf.rb checking for ruby/thread.h… *** extconf.rb […]

如何使用mysql2 gem创建预准备语句?

我尝试使用谷歌来回答这个看似简单的问题,但令我惊讶的是,它没有帮助。 我的rails应用程序中的代码目前正在使用mysql gem的’prepare’方法。 切换到mysql2时,会出现错误: undefined method `prepare’ for #<Mysql2::Client::0……. 所以我尝试寻找’prepare’方法的一个版本,但到目前为止这个搜索都没有成功。 任何人都可以帮我解决这个问题吗? 编辑:如果这是不可能的,有人可以让我知道是否有办法简单地用mysql2库中的东西参数化我的查询?

我可以在Ruby on Rails 3上使用MAMP(MySQL)或XAMPP(MySQL)吗?

我可以在Ruby on Rails 3上使用MAMP(MySQL)或XAMPP(MySQL)吗? 我从MYSQL.com安装了MySQL并且遇到了很多麻烦,我喜欢使用MAMP / XAMPP Mysql。 有人这样做吗? 我还需要做什么配置才能做到这一点。 我是RoR的新手。 先感谢您 ;-)

在Mac OS x Lion上安装mysql2 gem

前几天我更新到了Mac OSX Lion。 它打破了我的rails安装,因为我不得不重新编译mysql。 虽然我有工作重新安装mysql2gem已成为问题。 我当时正在跑豹,所以我要从32位到64位。 ~/code/rails/london (master)$ gem install mysql2 — –with-mysql-dir=/usr/local/mysql Building native extensions. This could take a while… ERROR: Error installing mysql2: ERROR: Failed to build gem native extension. /Users/stewartmatheson/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb –with-mysql-dir=/usr/local/mysql checking for rb_thread_blocking_region()… *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries […]

Rails mysql2 undefined方法`accept’代表nil:NilClass

我知道这是一百万次,但尝试了一切,我仍然得到这个错误: $ rake db:migrate rake aborted! undefined method `accept’ for nil:NilClass Tasks: TOP => db:migrate (See full trace by running task with –trace) 这是gem列表(不是全部): activemodel (3.2.8) activerecord (3.2.8) activerecord-mysql2-adapter (0.0.3) builder (3.1.3, 3.0.3) bundler (1.2.1) mysql2 (0.3.2) rails (3.2.8) rails_apps_composer (2.2.10) railties (3.2.8) rake (0.9.2.2) rdoc (3.12) sqlite3 (1.3.6) therubyracer (0.10.2) thor (0.16.0) tilt (1.3.3) […]

在Rails中按月和年份分组记录

我在Ruby 1.9.2,Rails 3.0.x上使用MySQL DB。 我有一个消息模型,每天都可以发布新消息。 我有一个索引操作,我想显示按月和年分组的这些消息。 这基本上用于过滤消息。 我的查询如下: – @active_msgs = Messages.where(‘expiry > ?’, Time.now).order(‘created_at DESC’) 在参考这篇文章之后,我在Rails中使用了group_by函数 我的分组查询是: – @msgs_by_month = @active_msgs.all.group_by {|u| u.created_at.month } 我收到了一个叫做@msgs_by_month的Hash。 这有助于我按月对消息进行分组,但我需要考虑这一年, 以形成一个独特的密钥 ,因为它可以帮助我区分例如,2011年9月和2012年9月。 我当前的键只有Hash [Month]类型(例如Hash [9] => 9月份,我可以显示所有适当的值)。 如何获得一个月,年类型的唯一键,我可以轻松循环显示按月和创建年份分组的所有记录。 谢谢 编辑 : – 我猜测一种方法是使用这里提供的created_at.to_date api。 我只是想知道,如何从created_at.to_date 删除当天获取一个可以与group_by函数一起使用的 唯一月份和年份组合键 。

将一些对象从一个数据库迁移到另一个数据库

如何从一个数据库(开发,sqlite)转储一个用户与他的所有关联(评论,post等)以将其插入另一个(生产,mysql)。 我应该将它转储到yaml或sql或其他东西?

Rails ActiveRecord按连接表关联的数量排序

我有一个Resource模型,可以使用“Acts As Votable”gem( Github页面 )进行投票。 投票系统运作完美,但我试图按每个Resource有多少votes来显示页面。 目前我的控制器根据标签提取资源,而不是订购: @resources = Resource.where(language_id: “ruby”) 如果我获取一个单独的资源并调用“@ resource.votes.size”,它将返回它有多少票。 但是,投票是另一个表,所以我认为需要进行某种联接,但我不知道如何做。 我需要的是一个很好的有序ActiveRecord集合,我可以这样显示吗? 书名 – 19票 书名 – 15票 书名 – 9票 书名 – 8票

如何将MySQL设置为Rails 3中的默认数据库?

我在去年四月开始使用Rails 2,但今年六月停止使用,因为我认为在Rails 3发布时学习它会更实用,因为很多都是完全重构和重组的。 我曾经使用Ubuntu 10.04(使用SQLite3作为默认数据库),但现在我使用的是Windows 7和MySQL 5.我已经安装了适用于MySQL的gem适配器,但要使用它我还需要调整database.yml。 谢谢。

Ruby on Rails MySQL#08S01Bad握手 – 降级MySQL?

我们最近在Ubuntu 10.04LTS服务器上从MySQL 5.1.41升级到5.1.61。 我们有一个古老的RoR Web应用程序,现在给出了一个糟糕的握手错误: Mysql::Error in MainController#index #08S01Bad handshake /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/vendor/mysql.rb:523:in `read’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/vendor/mysql.rb:153:in `real_connect’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:389:in `connect’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:152:in `initialize’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `new’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/mysql_adapter.rb:82:in `mysql_connection’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `send’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:262:in `connection_without_query_cache=’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/query_cache.rb:54:in `connection=’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:230:in `retrieve_connection’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:78:in `connection’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:763:in `columns’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:2060:in `attributes_from_column_definition_without_lock’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/locking/optimistic.rb:45:in `attributes_from_column_definition’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/base.rb:1502:in `initialize_without_callbacks’ /usr/lib/ruby/gems/1.8/gems/activerecord-1.15.3/lib/active_record/callbacks.rb:225:in `initialize’ #{RAILS_ROOT}/app/controllers/application.rb:48:in `new’ #{RAILS_ROOT}/app/controllers/application.rb:48:in `log_info’ /usr/local/bin/mongrel_rails:19:in `load’ /usr/local/bin/mongrel_rails:19 我google了一下,偶然发现了http://bugs.ruby-lang.org/issues/5017 ,它告诉我这是一个Ruby MySQL扩展错误。 我们没有使用MySQL gem。 我们的网络应用程序非常古老而脆弱(Ruby […]