MojaviよりもHTML_QuickFormよりも実はDB_DataObjectが一番好き。
でもMojavi + DB_DataObjectで罠るのが$user。
テーブル=クラス、カラム=メンバ変数、外部キー=包含と考えるとテーブル名はすごくシンプルで、データの集合を一言で表すいい名前をつけなきゃいけない。Userって凄く使いたくなる。

$user =& DB_DataObject::factory('User');
$user->find();
while ($user->fetch()) { $users[] = $user; }

とか超やりたい。(名前が気持ち良さのキモ)
が、MojaviはAction#execute($controller, $request, $user)なので無理・・・。

p0t: Mojavi QF定義

FormActionなるものを作って、そこでmodule/forms配下のclassをアクションに応じて自動的にexecuteするなんていう方法なんかどうでしょうか。

投稿者 おざき : 2005年02月07日 23:28

このアイデア、OOPP Memorandaの人がやってました。

OOPP Memoranda

・Mojaviフィルタ FormLoadFilter.php

ブタすんのSmartyFilterをパクって作ってみました。 actionsフォルダと同じ階層にformsというフォルダがあって、その中にアクション名Formというファイルがあると、それを読み込んでフォームインスタンスを作り、リクエストにセットします。
FormLoadFilter

Actionを一個にしてれば(InputAction, ConfirmActionとか分けないって意味)これはイイ!

買ってはいけない [ソーテック] – higuchi.com blog

もうすぐメーカー保証が終わるので、あわてて修理依頼の電話をしました。以下は、それからのやり取りの概略の記録です。こんなことになるとは思ってもいなかったのでメモが不十分で、日付など細部に間違いがあるかもしれませんが、経緯は事実に忠実です。

ソーテックはサポート酷いというお話。サポートや修理を職業にしている人のコメントなど相まって今週妻が浮気します。並に長いエントリーに。最後はむしろ良い話になってます。

超簡単コピペ型レンタルブログパーツ – JUGEPi!(ジュゲピ!)

超簡単コピペ型レンタルブログパーツ – JUGEPi!(ジュゲピ!) JUGEPi!はピッと貼ってパッと表示されるブログパーツを提供します。

うへぇ、komono toolsではこういうのやりたいと思ってたのに既にあったようです。しかもかわいいし。コレと組み合わせてBBSとか作ろうと思ってたんです。

あ、でもJUGEPiの方は今バグってて新規登録と書き込みできないようです。ツイてる!

Open Proxy からの Trackback Ping を拒否する MT プラグイン: blog.bulknews.net

Trackback Ping SPAM がなかなかひどいことになってきていて、特定のキーワードや URL ベースでブラックリストしているのですが新規追加もなかなかメンドウ。

ということで、DNS ベースの Blacklist である DSBL を利用して IP アドレスがブラックリストに載っている場合は Trackback Ping を拒否するプラグイン mt-tbping-dsbl をつくってみました。

tbping_plugin.png

Googleがnofollow属性をページランクから除外してから露骨にトラックバックスパムが増えてきてるようなので導入。

動作にはNet::DNSかnslookupコマンドが必要とこのこと。丁度nslookup欲しかったのでこっちを入れました。debian woodyだとdnsutilsパッケージに含まれてました。

利用可能なプラグインに表示されて嬉しい。でも常連であるonline pokerからは防げず!

[を] やっぱ早起きか

早寝早起きが何でも解決してくれそうな気がしてきた。 あれもこれも全部遅寝遅起きが原因か!?

相当解決してくれる気がする!この問題も

早寝は得意なんだけど早起きが苦手なんだよなぁ・・・。(12時間ぐらい寝てしまう)

たつをのホームページ

履歴書
謎めいていてもしょうがないので公開。

すごい共感。Blogのアカウント名も名前に変えよう。

島耕作が常務に昇進。出世ロードをまっしぐら、そしてモテモテです。

取締役島耕作 7 (7)
取締役島耕作 7 (7)
posted with amazlet at 05.02.17
弘兼 憲史
講談社 (2004/11/22)
売り上げランキング: 3,086
通常24時間以内に発送
おすすめ度の平均: 4
3 次作に期待
5 久々に
4 色気なしもなんだが・・・

PHP 観測所

あれから環境は変わり、PHP5 はリリースされ PEAR もメジャーに突っ込み Mojavi だって当たり前&次の模索が始まり、enzo.bz で始めた 2003 年当初に比べると実に様変わりしました。php|architect も日本語で読めるようになり、最近では Ethna なんてスイートなモノも出て、主に英語圏の情報を喰わないと生きていけないという時代も終わった気がします。 1 年は長いな と実感。

PHP観測所が復活!
ちょうど自分に抜けてる情報が入ってくる心地よさ。ツイてる!

DB_DataObjectのバグで思い出した。createTable.phpで吐かれるコードはこんな感じ、

<?php
/**
 * Table Definition for User
 */
require_once 'DB/DataObject.php';

class DataObjects_User extends DB_DataObject 
{
    ###START_AUTOCODE
    /* the code below is auto generated do not remove the above tag */

    var $__table = 'User';                            // table name
    var $userId;                          // int(11)  not_null primary_key auto_increment
    var $userName;                        // string(20)  not_null
    var $password;                        // string(20)  not_null
    var $eMail;                           // string(255)  not_null

    /* ZE2 compatibility trick*/
    function __clone() { return $this;}

    /* Static get */
    function staticGet($k,$v=NULL) { return DB_DataObject::staticGet('DataObjects_User',$k,$v); }

    /* the code above is auto generated do not remove the tag below */
    ###END_AUTOCODE
}

なんでPHPの閉じタグ(?>)無いの?

しかも動くし。スゴイ気になる。