ベリラボ

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

yum コマンド まとめ その1

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

no image

sedの基本

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

no image

yum コマンド まとめ その2

yum コマンド まとめの第2段です 【パッケージグループ一覧表示】 # yum grouplist インストールされている or インストール可能なパッケージグループの一覧表示。 パッケージグループ …

no image

ファイルを消してもディスク容量が減らない場合の対応

Linux/Unixで、ファイルを消したのにディスク使用量(ファイルシステム使用量)が減らなく、OSをリブートしたら減った経験はないでしょうか? なぜそうなるのか、対象方法はどうすればよいかをwiki …

no image

s-bit(sビット) と sticky bit(スティキービット)

なぜかわかりませんが、Linux(UNIX)環境で、s-bit(sビット) と sticky bit(スティキービット) を混同している場面を多く見かけます。 s-bit もしくは sビット とは、フ …