新手问题 学习 peatio 的时候卡住了,求帮助。

xbhuang · 2017年09月07日 · 最后由 xbhuang 回复于 2017年09月08日 · 2827 次阅读

第一次接触 ruby 和 rails,请多多指教 在部署 peatio 遇到以下问题,前来求助 ubuntu 16.04

ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux] Rails 4.0.13

peatio_development already exists
peatio_test already exists
rake aborted!
NameError: uninitialized constant ActiveRecord::Type
/home/xbhuang/.rvm/gems/ruby-2.2.1/gems/enumerize-2.1.2/lib/enumerize/activerecord.rb:69:in `<module:ActiveRecordSupport>'
/home/xbhuang/.rvm/gems/ruby-2.2.1/gems/enumerize-2.1.2/lib/enumerize/activerecord.rb:2:in `<module:Enumerize>'
/home/xbhuang/.rvm/gems/ruby-2.2.1/gems/enumerize-2.1.2/lib/enumerize/activerecord.rb:1:in `<top (required)>'
/home/xbhuang/.rvm/gems/ruby-2.2.1/gems/enumerize-2.1.2/lib/enumerize.rb:35:in `extended'
/home/xbhuang/workspace/peatio/app/models/deposit.rb:4:in `extend'
/home/xbhuang/workspace/peatio/app/models/deposit.rb:4:in `<class:Deposit>'
/home/xbhuang/workspace/peatio/app/models/deposit.rb:1:in `<top (required)>'
/home/xbhuang/.rvm/gems/ruby-2.2.1/gems/activesupport-4.0.13/lib/active_support/inflector/methods.rb:226:in `const_get'
/home/xbhuang/.rvm/gems/ruby-2.2.1/gems/activesupport-4.0.13/lib/active_support/inflector/methods.rb:226:in `block in constantize

gemfile

source 'https://rubygems.org'

gem 'rails', '~> 4.0.12'
gem 'rails-i18n'

gem 'mysql2', '0.3.20'
gem 'daemons-rails'
gem 'redis-rails'

gem 'rotp'
gem 'json'
gem 'jbuilder'
gem 'bcrypt-ruby', '~> 3.1.2'

gem 'doorkeeper', '~> 1.4.1'
gem 'omniauth', '~> 1.2.1'
gem 'omniauth-identity', '~> 1.1.1'
gem 'omniauth-weibo-oauth2', '~> 0.4.0'

gem 'figaro'
gem 'hashie'

gem 'aasm', '~> 3.4.0'
gem 'amqp', '~> 1.3.0'
gem 'bunny', '~> 1.2.1'
gem 'cancancan'
gem 'enumerize'
gem 'datagrid'
gem 'acts-as-taggable-on'
gem 'kaminari'
gem 'paranoid2'
gem 'active_hash'
gem 'http_accept_language'
gem "globalize", "~> 4.0.0"
gem 'paper_trail', '~> 3.0.1'
gem 'rails-observers'
gem 'country_select', '~> 2.1.0'

gem 'gon', '~> 5.2.0'
gem 'pusher'
gem 'eventmachine', '~> 1.0.4'
gem 'em-websocket', '~> 0.5.1'

gem 'simple_form', '~> 3.1.0'
gem 'slim-rails'
gem 'sass-rails'
gem 'coffee-rails'
gem 'uglifier'
gem "jquery-rails"
gem "angularjs-rails"
gem 'bootstrap-sass', '~> 3.2.0.2'
gem 'bootstrap-wysihtml5-rails'
gem 'font-awesome-sass'
gem 'bourbon'
gem 'momentjs-rails'
gem 'eco'
gem 'browser', '~> 0.8.0'
gem 'rbtree'
gem 'liability-proof', '0.0.9'
gem 'whenever', '~> 0.9.2'
gem 'grape', '~> 0.7.0'
gem 'grape-entity', '~> 0.4.2'
gem 'grape-swagger', '~> 0.7.2'
gem 'rack-attack', '~> 3.0.0'
gem 'easy_table'
gem 'phonelib', '~> 0.3.5'
gem 'twilio-ruby', '~> 3.11'
gem 'unread', github: 'peatio/unread'
gem 'carrierwave', '~> 0.10.0'
gem 'simple_captcha2', require: 'simple_captcha'
gem 'rest-client', '~> 1.6.8'

group :development, :test do
  gem 'factory_girl_rails'
  gem 'faker', '~> 1.4.3'
  gem 'mina'
  gem 'mina-slack', github: 'peatio/mina-slack'
  gem 'meta_request'
  gem 'better_errors'
  gem 'binding_of_caller'
  gem 'pry-rails'
  gem 'quiet_assets'
  gem 'mails_viewer'
  gem 'timecop'
  gem 'dotenv-rails'
  gem 'rspec-rails'
  gem 'byebug'
end

group :test do
  gem 'database_cleaner'
  gem 'mocha', :require => false
  gem 'shoulda-matchers'
  gem 'capybara'
  gem 'launchy'
  gem 'selenium-webdriver'
  gem 'poltergeist'

  # rspec-rails rely on test-unit if rails version less then 4.1.0
  # but test-unit has been removed from ruby core since 2.2.0
  gem 'test-unit'
end

peatio_development already exists

peatio_test already exists

这两个数据库存在了,是不是需要先删除掉?

mysql2 gem 用 0.3.15 的;mysql 使用 5.6 的。

chenge 回复

存在了应该不影响吧?下面不是 uninitialized constant,是没有找到这个类型吗?

您是说貔貅必须要用 0.3.15 吗?还是?我没太明白~

为什么不挑选一个简单点的项目学习呢?

lgn21st 回复

遇到大神深感荣幸,😅 昨晚跑了一个 blog,很简单。由于项目需要所以直接拿 peatio 来学习,比想象中有难度。遇到了很多兼容问题,我用了 2 楼所说的 0.3.15,发现 rails 貌似不兼容,但是 peatio 的 wiki 没有说需用哪一个版本。有点找不到北了。还请大神指教。

你所面对的问题不是 peatio 特有的,而是因为你对 Ruby 和 Rails 都是从零开始了解。所以你需要去看从零开始的教材。比如去 Rails 官网上的资源开始学起。

xbhuang 回复

Peatio 是一个定格在三年前的老项目,当时用的是主流 Ruby 版本,放到现在看,应该是一个很老旧的版本,具体是哪个版本我记不太清楚了。

5long 回复

感谢指点,我的想法是先跑起来再了解运行原理。这样在解决问题的过程中成长就会快很多,而且印象更深刻。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号