私は次のモデルを持っています:
class Model_Job extends ORM
{
public $ID;
public $user_ID;
public $title;
//some more variables
}
私のコントローラーには関数がありますaction_view()
; http://kohanaframework.org/3.3/guide/orm/using#finding-an-objectとまったく同じように実装された単一のジョブの詳細を表示する
public function action_view()
{
$this->render('Shit');
$this->template->content = View::factory('jobs/job')
->bind('job', $job);
$job = ORM::factory('job', $this->request->param('id'));
}
action_all()
を使用してすべてのジョブをフェッチfind_all
してページに配置する別の関数があります。これはうまく機能します(つまりecho $job->ID
、必要なことを実行します。IDをエコーします。ただし、そうでaction_view()
はありません。の出力をいくつか配置します。echo Debug::vars($job)
object Model_Job(39) {
public ID => NULL //Note they are NULL
public user_ID => NULL
public title => NULL
......................
protected _object => array(5) (
"ID" => string(1) "1"
"user_ID" => string(1) "1"
"title" => string(14) "Testbaantjeeee"
................
)
.....................
}
echo Debug::vars($job)
fromの例は次のaction_all()
ようになります。
object Model_Job(39) {
public ID => 1 //Note they are NOT NULL
public user_ID => 1
public title => "Testbaantjeeee"
......................
protected _object => array(5) (
"ID" => string(1) NULL //now these are NULL
"user_ID" => string(1) NULL
"title" => string(14) NULL
.....................
)
.....................
}
factory
、などに関するkohenaのドキュメントを調べましたがfind
、何をしているのか、何をしていないのかがわかりませんでした。私は何かが足りないのですか?私はそれを使用して動作させました:find_all
factory
find
find_all
$job = ORM::factory('job')
->where('ID', '=', $this->request->param('id'))
->find_all()[0];
しかし、それをすることは私にはまったく意味がありません。私は何が欠けていますか?