cubsonを使って3時間で作るXOOPS評価モジュール[3]

XOOPS用モジュールの開発支援ツールであるcubsonを使って、レストラン評価モジュールを作ってみましょう。
今回はその3回目。

前回の記事はこちらcubsonを使って3時間で作るXOOPS評価モジュール[2]

分かりづらい点や間違い点、質問などありましたら、お気軽にコメントしてください^^

(4) デフォルト・アクションの修正

前回までで、cubsonのインストール、プロジェクトの作成、テーブルの作成まで終わって、とりあえずモジュールの原型ができました。

しかし、今のままだとモジュールにアクセスしたときに何も表示してくれません。
そこで、デフォルトではレストランの一覧を表示するように設定します。

{module_dir}/class/Module.class.php

※{module_dir}は、モジュールが保存されているディレクトリ(C:\xampp\htdocs\html\modules\resrateなど)

を開いて、

function execute(&$controller)内の
$this->mActionName = "Default";

“Default”を{テーブル名}+{アクション}に変更します。
今回はレストランの一覧を表示したいので、”RestaurantList”に変更しました。
変更後:
$this->mActionName = "RestaurantList";

○アクション一覧

  • 編集: “Edit”
  • 一覧表示: “List”
  • 詳細表示: “View”
  • 削除: “Delete”

(5) テンプレートの修正

cubson が生成する一覧表示用のコードには余計な文字がまざっていて、うまく表示してくれません。そこで

{module_dir}/templates/{modulename}_{tablename}_list.html

の中の

"|theme}>

をすべて削除してください。

(6) インストール

ここで一度モジュールをインストールしてみましょう。
インストール方法は普通のモジュールと同じです。

モジュールをインストールすると、メインメニューに「RESRATE」というモジュール名が追加されているはずですので、それをクリックしてみましょう。

モジュールにアクセスすると、レストランの一覧表示画面になります。
また「ADD_A_NEW_RESTAURANT」から、新規レストランの追加もできるはずです。

各テーブルへのアクセスは

http://(XOOPSのURL)/modules/{モジュール名}/index.php?action={テーブル名}{アクション}

となっています。たとえば評価(rating)の一覧表示を見たい場合は

http://(XOOPSのURL)/modules/resrate/index.php?action=RatingList

とします。

【ここまでで50分】

次回は投稿時にユーザーIDを自動入力するようにしてみましょう。

カテゴリー: cubson   パーマリンク

cubsonを使って3時間で作るXOOPS評価モジュール[3] への4件のコメント

  1. mm より:

    はじめまして。
    勉強させていただきます。
    ちょっと質問させてください。

    変更後:
    $this->mActionName = “RestaurantList”;
    ですよね?

    あと、テンプレート自体の作成はどうやるのでしょうか?。
    恐縮ですが、よろしくお願いいたします。

  2. muzin より:

    mmさん

    >変更後:
    >$this->mActionName = “RestaurantList”;
    >ですよね?

    おっしゃるとおりです。修正しました。
    ありがとうございます。

    >テンプレート自体の作成

    cubsonを最初に使ったときに自動で生成されないでしょうか。
    いかがでしょう。

  3. naomi より:

    初歩的かも知れませんが。。。

    テーブルの作成の前にプロジェクトの生成がありますが、この手順でいくとCubsonはテーブルの名前も項目の内容も分からないので、
    actions/Restaurant.class.php
    を生成できないように思うんですが、これは動的にできるんですか?

    テンプレートも同じ意味で、最初にはcubsonくんもわからないかと。。

    どうなんでしょうか?

    • ものすごく今更なのですが、テンプレートは「cubsonを最初に使ったときに自動で生成」されません。
      resrate関連のファイルを編集しているのならば、それらを全て保存するなりして終了させた後、
      cubsonのコンソールウィンドウに以下のようなコマンドを入力します。
      modulename resrate
      wizard restaurant
      wizard cat
      wizard rating

      そうすれば、templateフォルダにファイルが作成されます。
      後は、xoopsの管理画面でresrateモジュールのアップデートを行えば、使用可能の状態になると思います。

コメントをどうぞ

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>