2010-12-05 2 views
0

Я изучаю Symfony, и я столкнулся с одной проблемой, и я не смог найти ответ: Я беру в качестве примера учебник Jobeet от Jobeet-1.4-Doctrine- эн.Форма данных нескольких моделей в одном модуле в Symfony

На 3-й день [ day 3]: Это все о модели, и это где я застрял При создании внешнего интерфейса, следующая команда:

$ доктриной PHP Symfony: генерировать-модуль --with -show --non-многословным-шаблоны интерфейс работы JobeetJob

Он генерирует модуль «работу» в соответствии с предоставленным модулем «JobeetJob»

Мой вопрос теперь: у меня есть еще один модуль под названием «JobeetArticles «где люди могут n как написать лучшее резюме и такие вещи. Я хочу, чтобы для модуля «работа» были доступны как данные JobeetJob, так и «JobeetArticles». Как я могу это сделать? Я надеюсь, что мой вопрос ясен

С уважением

ответ

1

Вообще, если ваши отношения могут быть сконфигурированы правильно (я не уверен, что если вам нужно сделать что-нибудь в Symfony, чтобы позволить этому), вы бы просто сделать что-то подобное в Jobeet учебники с категориями ...

в файле actions.class.php для задания у вас есть executeIndex и внутри него у вас есть $ this-> categories = JobeetCategoryPeer :: getWithJobs();

и что это такое - найти модель JobeetCategoryPeer и вызвать функцию getWithJobs() в этой модели, а затем вернуть эти данные обратно контроллеру задания для отправки в виде в виде категорий $.

Так что вы хотели бы сделать что-то подобное, так что в JobeetArticlesPeer создать функцию, чтобы вернуть данные, которые вы хотите ...

static public function getArticles() 
{ 
    $criteria = new Criteria(); 
    //whatever criteria you want in here 

    return self::doSelect($criteria); 

} 

И в вашем JobeetJob actions.class.php файл что-то вроде

public function executeIndex(sfWebRequest $request) 
{ 
    $this->articles = JobeetArticlesPeer::getArticles(); 
} 

И, наконец, в вашем indexSuccess.php для JobeetJob

<?php foreach ($articles as $article): ?> 
    <div class="article"> 
    <div class="article_title"> 
     <h1> 
     <?php echo link_to($article, 'article', $article) ?> 
     </h1> 
     <?php echo $article->getAuthor() //field name for author ?> 
    </div> 
    <div class="article_content"> 
     <?php echo $article->getContent() //field name for article content ?> 
    </div> 
    </div> 
<?php endforeach; ?> 

И т hat должно дать вам общее представление о том, как получить доступ к данным из других моделей.