ベリラボ

OSS(オープンソースソフトウェア) を主体とした技術検証と小ネタなど

akelos apache fedora framework linux PHP

Fedora 8 で akelos のチュートリアル (その2)

投稿日:

前回は、akelos導入、チュートリアル用のbooklinkをセットアップをしてbook/authorの追加、更新、削除までやりましたが、今回は、book/authorの関連付けです。

【book/authorモデル追記】

$ cd ~/booklink/
$ vi app/models/book.php
以下のようになるように追記
<?php

class Book extends ActiveRecord
{
var $belongs_to = ‘author’; // <- declaring the association
}

?>

$ vi app/models/author.php
以下のようになるように追記
< ?php

class Author extends ActiveRecord
{
var $has_many = ‘books’; // <- declaring the association
}

?>

【bookコントローラー追記】

$ vi app/controllers/book_controller.php
以下のようになるように追記
class BookController extends ApplicationController
{
var $models = 'book, author'; // < - make these models available

// … more BookController code

function show()
{
// Replace “$this->book = $this->Book->find(@$this->params[‘id’]);”
// with this in order to find related authors.
$this->book = $this->Book->find(@$this->params[‘id’], array(‘include’ => ‘author’));
}

// … more BookController code
}

【book form用テンプレート追記】

$ vi app/views/book/_form.tpl
以下のようになるように追記
< ?php echo $active_record_helper->error_messages_for('book');?>

< label for=”author”>_{Author}
< ?=$form_options_helper->select(‘book’, ‘author_id’, $Author->collect($Author->find(), ‘name’, ‘id’));?>

< label for=”book_title”>_{Title}
< ?php echo $active_record_helper->input(‘book’, ‘title’)?>

【book/author関連付け確認】
Webブラウザから http://XXXXXXXX/book にアクセス。
bookのeditを行ったとき、Author がプルダウンで選択できること。
bookのshowを行ったとき、Author の項目が表示されること

ここまでで本家のチュートリアルに出ているところまでできました。

-akelos, apache, fedora, framework, linux, PHP

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

ベリサイン + apahce + OpenSSL + mod_ssl ではまり

ベリサイン + apahce + OpenSSL + mod_ssl ではまりました。 秘密鍵作成、CSR作成を行ってベリサインに申請。 戻ってきたServerIDを保存して以下のようにssl.con …

no image

yum コマンド まとめ その1

yumとは、Yellowdog Updater Modified の略です。 Fedora 等で依存関係を考慮して rpmパッケージのインストール、アンインストール、更新等を行ってくれるツールです。 …

no image

sedの基本

Linux/UNIXで使用されるsedコマンドですが、うまくまとまっているページがみつからなかったのでまとめてみました。 是非見てください。 sedの基本

no image

その rpm いつインストールしたんだっけ?

rpm をいつ入れたかを見たいときは、以下のコマンドで表示できます。 $ rpm -qa –last このコマンド は、rpm をインストールした日付、時刻を新しいものの順番で表示してくれます。 も …

no image

rpmコマンドまとめ その1

RPMとは、RPM Package Manager の略です。 かなりわかりづらいですね。(笑) ここでいうパッケージ(Packege)とは、 設定ファイルやら実行モジュールなどを一個のファイルにまと …