この件、PHP が関数名に対して大文字・小文字の区別を行わないことに起因す
る現象だと考えられます。Piece_ORM の現在の実装は、メソッド名の
大文字・小文字を区別しており、findByid と findById は別のメソッドと認
識されてしまいます。その結果、findByid は再定義ではなく、新規メソッド
として宣言され、Fatal error: Cannot redeclare エラーが発生します。
この不具合については、Piece_ORM 側もメソッド名の大文字・小文字を区別し
ないように修正を行います。
http://trac.piece-framework.com/piece-orm/ticket/59
以上、よろしくお願いいたします。
--
KUBO Atsuhiro e-mail: ku...@iteman.jp
katarou さんは書きました:
> 田川です。
>
> Piece_ORMのファインダ再定義について教えてください。
>
> 例)テーブル名がfooのidで検索を行う場合の再定義(テーブルbarのidx にrelasionshipあり)は
>
> - name: findByid
> query: select * from foo where and idmstsection=$idmstsection
> relationship:
> - type: manyToOne
> table: bar
> mappedAs: barrow
> column: id
> referencedColumn: idx
>
> でよろしかったでしょうか?
> この内容で再定義を行うとファインダ実行時に
>
> Fatal error: Cannot redeclarew