2012-02-26 15 views
0

私は機能的なSymfony Projectを持っています。プロジェクトに多対多の関係を追加する必要があります。Symfony Propel多対多追加

私はjobsテーブルとcitiesテーブルを持っています。ジェネレータを使用してこの関係を追加するにはどうすればよいですか(既存のデータを変更したくない) ジョブに複数の都市を割り当てるには、ジョブフォーム(追加、編集、リスト)でこの関係を使用します。 JobCity、JobCityQuery、およびJobCityPeer使用する:あなたは、クラスの新しいセットを持っています再生した後

<table name="job_city" isCrossRef="true"> 
    <column name="job_id" type="INTEGER" primaryKey="true" /> 
    <column name="city_id" type="INTEGER" primaryKey="true" /> 

    <foreign-key foreignTable="job"> 
    <reference local="job_id" foreign="id" /> 
    </foreign-key> 
    <foreign-key foreignTable="city"> 
    <reference local="city_id" foreign="id" /> 
    </foreign-key> 
</table> 

答えて

0

はあなたのジョブと都市の間に座っ相互参照表が必要になります。都市に新しいジョブを追加することができます。

$job = new Job(); 
// add job info ... 
$job->save(); 
$city = CityQuery::create()->findOneByName("Austin"); 
$city->addJob($job); 
$city->getJobs(); // returns PropelObjectCollection of Job objects 
関連する問題