このまえの
RedMineのプラグイン作成でハマった話
http://blog.goo.ne.jp/xmldtp/e/032ea46c8fc93828e3df200d01b65346
では、
http://www.r-labs.org/projects/r-labs/wiki/GuideSkeleton
をやったので、今日は
http://www.r-labs.org/projects/r-labs/wiki/GuideInitRb
http://www.r-labs.org/projects/r-labs/wiki/GuideModel
http://www.r-labs.org/projects/r-labs/wiki/GuideControlSkelton
http://www.r-labs.org/projects/r-labs/wiki/GuideForProject
の途中まで
■前提条件
MySQLは、まえやったまま、つまり
mysqld --skip-grant-tables
で立ち上げたまま
ディレクトリはC:\Bitnami\redmine-3.0.2-0\apps\redmine\htdocs
つまり
cd C:\Bitnami\redmine-3.0.2-0\apps\redmine\htdocs
した後の話。
それ以外も、基本的には、上記サイトの続きの話。
ハマったも5番まできたので、今度6番から
■ハマった6 モデル作成できない
ruby bin/rails generate redmine_plugin_model redmine_standard foo project_id:integer
とやったら、
ActiveRecord::StatementInvalid: Mysql2::Error: Table 'redmine_development.schema_migrations' doesn't exist: SELECT version FROM schema_migrations
っていうエラーschema_migrationsテーブルが無いらしい。
http://d.hatena.ne.jp/name-3333/20100411/1271000161
を参考に、schema_migrationsテーブルを作成する
mysqlで、use redmine_developmentして、redmine_developmentデータベースに入った後、
CREATE TABLE `schema_migrations` (`version` varchar(255) NOT NULL) ENGINE=InnoDB
を実行して、再度やったらうまくいった。
■ハマった7 プラグインが表示されない
その後
ruby bin/rails generate redmine_plugin_controller redmine_standard foos index new show edit
して、コントローラーとViewをつくり、いったんマシンを落として、再度立ち上げたんだけど・・・
なにも起こらない。
bundle exec rake db:migrate_plugins RAILS_ENV='production'
して、プラグインをインストールしても、何も起こらない・・・
理由は、init.rbをかえていないからの模様。
最終的に、以下のように書き換えた。
# encoding: UTF-8 require 'redmine' Redmine::Plugin.register :redmine_standard do name 'Redmine Standard plugin' author 'Author name' description 'This is a plugin for Redmine' version '0.0.1' url 'http://example.com/path/to/plugin' author_url 'http://example.com/about' project_module :standard do permission :view_foos, :foos => [:index, :show] permission :manage_foos, :foos => [:new, :edit, :create, :update, :destroy, :preview], :require => :member end menu :project_menu, :standard, { :controller => 'foos', :action => 'index'}, :param => :project_id end |
それと
http://www.r-labs.org/projects/r-labs/wiki/GuideForProject
にあるように、表示するには
管理→ロールと権限、
各プロジェクトの設定→モジュール
の設定が必要
■ハマった8 エラーになる
エラーになって、全く動かない。
理由はconfig/routes.rbを設定しないからみたい。
これを、以下のように書き換えた。
|
これで一応動いたんだけど、まだまだ
http://www.r-labs.org/projects/r-labs/wiki/GuideForProject
の「index ページの表示」以下の設定をしないといけない・・・