0

私はSymfony1.4を使用しており、すでにschema.ymlを作成し、そのうちの3つを作成し、複数の接続を使用してdatabase.ymlを作成しました。

そして、symfonyのbuild --modelを実行し、クラスを作成しました。そのうちの1つは、id、name、description...の列を持つスキーマからの「Schedule」です。

そのクラスをどのように使用して、そのメソッドまたは関数、setterおよびgetterを使用しますか?書籍によると、モデルが生成された場合はセッターとゲッターがあります。

フィルタを使用してデータを取得するにはどうすればよいですか?

4

1 に答える 1

1

あなたの質問は少しあいまいです。ただし、モデルから次のことができます。

エントリを作成します。

$schedule = new Schedule();
$schedule->setName('foo');
$schedule->setDescription('bar');
$schedule->save();

すべてのエントリを検索

$schedules = Doctrine_Core::getTable('Schedule')->findAll();

1 つのアイテムを取得Scheduleします ( ID 1 のアイテムが存在すると仮定した場合)

$schedule = Doctrine_Core::getTable('Schedule')->find(1);
$schedule = Doctrine_Core::getTable('Schedule')->findOneByName('foo');

モデル内のフィールドにアクセスする

$name        = $schedule->getName();
$description = $schedule->getDescription();

編集:

ScheduleTable.class.phpカスタムゲッター:

public function findByStatusAndRangeTime($status, $start, $end)
{
  $q = $this->createQuery('s');
  $q->where('s.status = ? AND s.time_start < ? AND s.time_end > ?', array($status, $start, $end));

  return $q->execute();
}

次に、次を使用して呼び出すことができます。

$schedule = Doctrine_Core::getTable('Schedule')->findByStatusAndRangeTime('pending', '1:00', '5:00');
于 2012-10-17T08:10:18.443 に答える