<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Комментарии: UA Symfony Camp &#8212; мини-отчет по второй конференции</title>
	<atom:link href="http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/feed/" rel="self" type="application/rss+xml" />
	<link>http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/</link>
	<description>О разработке веб-приложений на Symfony</description>
	<lastBuildDate>Mon, 30 Jan 2012 14:23:53 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>Автор: sergio</title>
		<link>http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2194</link>
		<dc:creator>sergio</dc:creator>
		<pubDate>Fri, 22 May 2009 07:18:46 +0000</pubDate>
		<guid isPermaLink="false">http://tigor.com.ua/blog/?p=1154#comment-2194</guid>
		<description>Да ребята, было душевно - Саше, Игорю и Роме спасибо за доклады и атмосферу вообще. )
Рома вообще молодец - не постеснялся все это организовать и собрать народ!
Надеюсь я тогда не сильно его достал своими вопросами про плагины :)</description>
		<content:encoded><![CDATA[<p>Да ребята, было душевно &#8212; Саше, Игорю и Роме спасибо за доклады и атмосферу вообще. )<br />
Рома вообще молодец &#8212; не постеснялся все это организовать и собрать народ!<br />
Надеюсь я тогда не сильно его достал своими вопросами про плагины <img src='http://tigor.com.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: tundrax</title>
		<link>http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2178</link>
		<dc:creator>tundrax</dc:creator>
		<pubDate>Thu, 21 May 2009 05:17:40 +0000</pubDate>
		<guid isPermaLink="false">http://tigor.com.ua/blog/?p=1154#comment-2178</guid>
		<description>Проблема такова:

Имеется типичная модель из 2 таблиц с 1  N релейшн, скажем Категории и Субкатегории.
При создании новой категории, в главную форму вкладывается 1 форма для субкатегории. Это указано в методе configure() формы Категория.
И рядом линк &quot;Добавить субкатегорию&quot; которая через аях впихивает новую пустую субформу субкатегории.

Так в методе bind() главной формы embeddedForms содержит ту форму которая изначально была вложна в методе configure(), а которая через аях впихана в embeddedForms нету.

configure() :

$i = 0;
    $wrapperForm = new sfForm();

    if (!$this-&gt;isNew())
    {
      foreach ($this-&gt;getObject()-&gt;getDates() as $date)
      {
        $wrapperForm-&gt;embedForm($i, new EDateForm($date));
        $i++;
      }
    }

    $wrapperForm-&gt;embedForm($i, new EDateForm());
    $this-&gt;embedForm(&#039;date_forms&#039;, $wrapperForm);


Action which adds new form via ajax:

$wrapperForm = new sfForm();
      $wrapperForm-&gt;embedForm($dfc + 1, new EDateForm());
      $form = new EForm();
      $form-&gt;embedForm(&#039;date_forms&#039;, $wrapperForm);
      
      $this-&gt;form = $form[&#039;date_forms&#039;][$dfc + 1];

      $dfc++;
      $this-&gt;getUser()-&gt;setAttribute(&#039;dfc&#039;, $dfc);

      return $this-&gt;renderPartial(&#039;date-form&#039;);

bind() method of a parent form:

foreach ($this-&gt;embeddedForms[&#039;date_forms&#039;]-&gt;getEmbeddedForms() as $k =&gt; $dateForm)
    {
      if (is_null($taintedValues[&#039;date_forms&#039;][$k][&#039;starts_at_date&#039;]) &#124;&#124; strlen($taintedValues[&#039;date_forms&#039;][$k][&#039;starts_at_date&#039;]) === 0)
      {
        unset($this-&gt;embeddedForms[&#039;date_forms&#039;][$k], $taintedValues[&#039;date_forms&#039;][$k]);
        $this-&gt;validatorSchema[&#039;date_forms&#039;][$k] = new sfValidatorPass();
      }
    }</description>
		<content:encoded><![CDATA[<p>Проблема такова:</p>
<p>Имеется типичная модель из 2 таблиц с 1  N релейшн, скажем Категории и Субкатегории.<br />
При создании новой категории, в главную форму вкладывается 1 форма для субкатегории. Это указано в методе configure() формы Категория.<br />
И рядом линк &#171;Добавить субкатегорию&#187; которая через аях впихивает новую пустую субформу субкатегории.</p>
<p>Так в методе bind() главной формы embeddedForms содержит ту форму которая изначально была вложна в методе configure(), а которая через аях впихана в embeddedForms нету.</p>
<p>configure() :</p>
<p>$i = 0;<br />
    $wrapperForm = new sfForm();</p>
<p>    if (!$this-&gt;isNew())<br />
    {<br />
      foreach ($this-&gt;getObject()-&gt;getDates() as $date)<br />
      {<br />
        $wrapperForm-&gt;embedForm($i, new EDateForm($date));<br />
        $i++;<br />
      }<br />
    }</p>
<p>    $wrapperForm-&gt;embedForm($i, new EDateForm());<br />
    $this-&gt;embedForm(&#8216;date_forms&#8217;, $wrapperForm);</p>
<p>Action which adds new form via ajax:</p>
<p>$wrapperForm = new sfForm();<br />
      $wrapperForm-&gt;embedForm($dfc + 1, new EDateForm());<br />
      $form = new EForm();<br />
      $form-&gt;embedForm(&#8216;date_forms&#8217;, $wrapperForm);</p>
<p>      $this-&gt;form = $form['date_forms'][$dfc + 1];</p>
<p>      $dfc++;<br />
      $this-&gt;getUser()-&gt;setAttribute(&#8216;dfc&#8217;, $dfc);</p>
<p>      return $this-&gt;renderPartial(&#8216;date-form&#8217;);</p>
<p>bind() method of a parent form:</p>
<p>foreach ($this-&gt;embeddedForms['date_forms']-&gt;getEmbeddedForms() as $k =&gt; $dateForm)<br />
    {<br />
      if (is_null($taintedValues['date_forms'][$k]['starts_at_date']) || strlen($taintedValues['date_forms'][$k]['starts_at_date']) === 0)<br />
      {<br />
        unset($this-&gt;embeddedForms['date_forms'][$k], $taintedValues['date_forms'][$k]);<br />
        $this-&gt;validatorSchema['date_forms'][$k] = new sfValidatorPass();<br />
      }<br />
    }</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: ingvar</title>
		<link>http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2165</link>
		<dc:creator>ingvar</dc:creator>
		<pubDate>Wed, 20 May 2009 14:57:10 +0000</pubDate>
		<guid isPermaLink="false">http://tigor.com.ua/blog/?p=1154#comment-2165</guid>
		<description>Обсуждали немного, но без докладов. Обещали в следующий раз подготовить формы, генераторы, TDD. А какие собственно проблемы с формами?</description>
		<content:encoded><![CDATA[<p>Обсуждали немного, но без докладов. Обещали в следующий раз подготовить формы, генераторы, TDD. А какие собственно проблемы с формами?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: tundrax</title>
		<link>http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2164</link>
		<dc:creator>tundrax</dc:creator>
		<pubDate>Wed, 20 May 2009 14:43:45 +0000</pubDate>
		<guid isPermaLink="false">http://tigor.com.ua/blog/?p=1154#comment-2164</guid>
		<description>Хорошо что есть интерес, и люди собираются по поводу Симфони.
Хотелось унзать ничего про ФОРМЫ не говорили? Особенно интересно узнать кто как решет проблемы вложенных форм.</description>
		<content:encoded><![CDATA[<p>Хорошо что есть интерес, и люди собираются по поводу Симфони.<br />
Хотелось унзать ничего про ФОРМЫ не говорили? Особенно интересно узнать кто как решет проблемы вложенных форм.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: ingvar</title>
		<link>http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2156</link>
		<dc:creator>ingvar</dc:creator>
		<pubDate>Wed, 20 May 2009 07:59:22 +0000</pubDate>
		<guid isPermaLink="false">http://tigor.com.ua/blog/?p=1154#comment-2156</guid>
		<description>Спасибо pilot :).
Из твоего доклада по роутингу я тоже много чего нового и интересного узнал</description>
		<content:encoded><![CDATA[<p>Спасибо pilot <img src='http://tigor.com.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .<br />
Из твоего доклада по роутингу я тоже много чего нового и интересного узнал</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: pilot</title>
		<link>http://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2154</link>
		<dc:creator>pilot</dc:creator>
		<pubDate>Wed, 20 May 2009 07:32:27 +0000</pubDate>
		<guid isPermaLink="false">http://tigor.com.ua/blog/?p=1154#comment-2154</guid>
		<description>хорошая презентация, так как во всех проектах на переводы обычно мало времени, и по этому в такие дебри и не пытались залезать, но после твоего доклада можно смело нырять.

Главное, что это очень сильно упростит управление переводами сайта на другие языки.

Респект!</description>
		<content:encoded><![CDATA[<p>хорошая презентация, так как во всех проектах на переводы обычно мало времени, и по этому в такие дебри и не пытались залезать, но после твоего доклада можно смело нырять.</p>
<p>Главное, что это очень сильно упростит управление переводами сайта на другие языки.</p>
<p>Респект!</p>
]]></content:encoded>
	</item>
</channel>
</rss>

