NetBeansIDEからプラグインを作成する¶
プラグイン チュートリアルで行っていることをNetBeansIDE上から行ないます。
プラグインジェネレータをNetBeans上から実行する。¶
プロジェクトを選択、右クリックして表示されるメニューから「生成...」を実行します。
表示されるRails ジェネレータでredmine_pluginを選択します。
引数にPollsと入力し「了解」を押します。するとプラグインジェネレータが実行され、完了すると生成されたプラグインのinit.rbが表示されます。
プロジェクトを開いてみると、ベンダー-pluginsの下にredmine_pollsが出来ているのが確認できます。
モデルを作る¶
では次はまたチュートリアルに従ってモデルを作ってみます。再びプロジェクトを右クリックしてRails ジェネレータを実行します。
今度はジェネレータにredmine_plugin_model、引数に"polls poll question:string yes:integer no:integer"を指定します・・・
と言いたいところなのですが、何故かNetBeansIDE上からredmine_plugin_modelを実行するとエラーになって上手くいきません。
仕方がないのでこれはコマンドプロンプトから行います。
C:\>cd redmine-0.9.3 C:\redmine-0.9.3>ruby script/generate redmine_plugin_model polls poll question:string yes:integer no:integer exists app/models/ create test/unit/ create test/fixtures/ create app/models/poll.rb create test/unit/poll_test.rb create test/fixtures/polls.yml exists db/migrate create db/migrate/20100312093511_create_polls.rb C:\redmine-0.9.3>
モデルができたところでプラグインのテーブルをマイグレートしましょう。プロジェクトを右クリックして「Rakeタスクを実行/デバッグ...」を選択すると以下のような画面が表示されます。
ここでdb:migrate_pluginsを選択して実行します。
これでマイグレーションも完了しました。
次にチュートリアルではモデルのデータを作成しています。同じようにモデルのデータを作成しましょう。
プロジェクトを右クリックして「Rails コンソール...」を実行します。
すると画面下部にRails コンソールウィンドウが表示されますので以下の2つのコマンドを入力してください。
- Poll.create(:question => "Can you see this poll ?")
- Poll.create(:question => "And can you see this other poll ?")
これでデータもできました。後はチュートリアルに従ってapp/models/poll.rbを編集してメソッドを追加してください。
コントローラを作る¶
コントローラも何故かNetBeansIDE上では作れないのでモデルと同じくコマンドプロンプトから作ってください。
C:\>cd redmine-0.9.3 C:\redmine-0.9.3>ruby script/generate redmine_plugin_controller Polls polls index vote exists app/controllers/ exists app/helpers/ create app/views/polls create test/functional/ create app/controllers/polls_controller.rb create test/functional/polls_controller_test.rb create app/helpers/polls_helper.rb create app/views/polls/index.html.erb create app/views/polls/vote.html.erb C:\redmine-0.9.3>
そしてチュートリアルに従ってソースを編集してください。
メニューその他¶
メニュー、パーミッション、その他一通りチュートリアルに従ってソースコードを編集してください。
起動する。¶
NetBeansIDEのツールバーで再生ボタンを押し、Redmineを起動してみましょう。無事プラグインが表示されましたか?
Takashi Takebayashi さんがほぼ14年前に更新 · 5件の履歴