× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
RubricksはRuby on Railsを利用して開発されたオープンソースのCMSです。
私はこのRubricksをLMS(Lerning Management System)としても利用出来るようにするため、コンポーネントの開発を行います。 長くなりそうなので分けました。 というわけで、トップページから見ている方は、右下の「つづきはこちら」へ。
Rubricks - CMS on Rails(本家)
まずはインストールです。 Windows版のインストールについては、以下のページを参考にして下さい。 RubricksInstallationWindowsJa - Rubricks Project - Trac 以下に私のケースを書きます。 ちなみに、Cygwinで開発しています。 Rubricksのダウンロードは本家からリンクをたどって、Rubyforgeから落とすことが出来ます。 RubyForge: Rubricks: Project Info ダウンロード後は解凍し、適当な場所へ配置します。 データベースの作成を行います。 secretはパスワードなので、自分で何か考えて下さい。
config/database.ymlの変更を行います。 sample1_database.ymlというファイルがあるので、それをコピーします。 cp config/sample1_database.yml config/database.ymlその後、編集します。 common: &common config/environment.rbを編集します。 今回は開発を目的にしているので、RAILS_ENVをdevelopmentに変更します。 ENV['RAILS_ENV'] ||= 'production'を、次のように編集します。 ENV['RAILS_ENV'] ||= 'development' migrateを実行します。 rake db:migrate
ruby script/rubricks_config site_default_language japanese サーバを起動させます。 ruby script/serverこれでブラウザでアクセスすると動いているはずです。 http://localhost:3000/ しかし、ここで問題が起きました。 右上に表示されるはずのメッセージ(ログイン、ログアウト、検索等)が表示されていないのです。 さらに、ログインボタンを押しても、ログインフォームが表示されません。 試しに言語を英語にして動かしてみましたが、ログインフォームは表示されたものの、メッセージは相変わらず表示されず、ログイン後の挙動もおかしいです。 というわけで、ソースを見てみることに。 app/models/rubricks_lib/rubricks_language_lib.rbに原因がありそうだったので見てみました。 特におかしな点は見つからなかったんですが、166行目の (["#{RAILS_ROOT}/languages/english.rb"] + Dir.glob("#{RAILS_ROOT}/languages/#{language}.rb") + english_lang_path + default_lang_path).each do |path|の部分を以下のような絶対パスに変更してみました。 (["/home/y-hayato/rails/rubricks/languages/english.rb"] + Dir.glob("/home/y-hayato/rails/rubricks/languages/#{language}.rb") + english_lang_path + default_lang_path).each do |path|この変更にはサーバの再起動が必要そうだったので、再起動して動かしてみると、上手くいきました。 メッセージの表示を直すつもりだったのに、ログインフォームの表示、ログイン後の挙動も正常通りです。 全部メッセージの表示が原因だったんですね。 ただし、このソースの変更は直接絶対パスを指定するという応急処置に過ぎず、このままではよくありません。 何故、166行目の処理が上手く動いてないんでしょうか。 RAILS_ROOTの値がおかしいのかもしれないと思い、出力してみました。 script/../config/..サーバを動かしている場所はrubricksディレクトリの中なので、多分このパスは合っています。 (何故、このような値になっているかはわからないが) 試しに、パスに全然違う値を入れてみました。 すると、「no such file to load」というエラーが出ました。 ということは、RAILS_ENVを使っている方のソースでもファイルの読み込みは成功しているはず。 では、何故メッセージが表示されないのだろうか。 といったところで詰まってしまいました。 ここでずっと悩んでいても仕方ないので、調べつつも次の工程に進みたいと思います。 今回はここまで。 あ、インストールガイドにも書いてありますが、ログインのデフォルトユーザ名は「admin」で、パスワードは「pass」ですよ。 PR |
|
トラックバックURL
|
忍者ブログ [PR] |