2015-07-21 4 views
0

Я использую HauteLook/Алис-bundleand мне нужны навыки нагрузки для моих разработчиков я пишу SkillsLoader.php:Светильники Alice Symfony

class LoadSkillssData extends AbstractFixture implements OrderedFixtureInterface 
{ 
public function load(ObjectManager $manager) 
{ 
    $all_skills = 
     [ 
      'doctrine 2', 
      'Memcache', 
      'QA', 
      'testing', 
      'web design', 
      'EJB 3' 
     ]; 
    for ($i = 1; $i<=172; $i++) 
    { 
     $skills = new Skills(); 
      $skills -> setId($i); 
      $skills ->setSkill($all_skills[$i]); 
     $manager->persist($skills); 
     $manager->flush(); 

    } 
} 

public function getOrder() 
{ 
    return 1; // the order in which fixtures will be loaded 
} 

Но я создаю SETID() для объекта мастерства, потому что имеет идентификатор ошибки не может быть нулевым. Но мой вопрос, как использовать ЭЛИС-bundleand в YML файл я Canu pload fixteures умение, это у меня есть

Artel\CustomerBundle\Entity\Cities: 
cities{1..50}: 
city: <city()> 

Artel\CustomerBundle\Entity\Developers: 
users{1..20}: 
location: @cities* 
level: <?php $names = ['Junior', 'Middle', 'Senior']; echo $names[array_rand($names)]; ?> 
main_skill: @skills* 
firstName: <firstName()> 
lastName: <lastName()> 
username: <firstNameMale()> 
telephone: <phoneNumber()> 
skype: skypeName 
email: <email()> 
password: <password()> 
roles: <?php $names = ['ROLE_ADMIN', 'ROLE_USER', 'ROLE_AGENT', 'ROLE_COMPANY']; echo $names[array_rand($names)]; ?> 

Artel\CustomerBundle\Entity\Skills: 
skills{1..30}: 
skill: ???? 

ответ

0

This tutorial имеет все охвачены. Вы можете создавать отдельные файлы YAML для каждого объекта и загружать их в правильном порядке (по зависимости), а затем ссылаться на навыки других инструментов.

Если ваша проблема заключается в том, что для создания навыка из файлов YAML необходим вызов конструкции, вы можете сделать это тоже (как показано в учебнике).

Смежные вопросы