我已经按照链接中的说明安装了宝石Ahoy-> https://github.com/ankane/ahoy
将这一行添加到应用程序的Gemfile中:
gem 'ahoy_matey'
并在jQuery后面的app/assets/javascripts/application.js中添加JavaScript文件。
//= require jquery
//= require ahoy
MySQL或SQLite
将activeuid添加到Gemfile。
gem 'activeuuid', '>= 0.5.0'
然后运行:
rails generate ahoy:stores:active_record
rake db:migrate
最后一个命令产生以下错误
rake db:migrate
== CreateVisits: migrating ===================================================
-- create_table(:visits, {:id=>false})
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:
PG::UndefinedObject: ERROR: type "binary" does not exist
LINE 1: CREATE TABLE "visits" ("id" binary(16) PRIMARY KEY, "visitor...
1条答案
按热度按时间yptwkmov1#
这是一个老问题,已经在Ahoy的最新版本中得到了解决。该错误消息表示MySQL数据库没有
binary
数据类型。要解决此错误,请尝试以下解决方案。1.修改Ahoy迁移文件中
id
列的数据类型,由binary
修改为bytea
:1.或者在
bundle install
之后运行以下命令:1.跳过
activeuuid
gem和rails generate ahoy:stores:active_record
命令,因为activeuuid
gem仅适用于PostgreSQL。运行此命令以创建访问表:最后: