<?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>
	Comments on: UA Symfony Camp &#8211; мини-отчет по второй конференции	</title>
	<atom:link href="https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/feed/" rel="self" type="application/rss+xml" />
	<link>https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ua-symfony-ua-camp-small-report</link>
	<description>О разработке веб-приложений на Symfony</description>
	<lastBuildDate>Thu, 04 Jun 2009 23:33:55 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
	<item>
		<title>
		By: sergio		</title>
		<link>https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2194</link>

		<dc:creator><![CDATA[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><![CDATA[Да ребята, было душевно - Саше, Игорю и Роме спасибо за доклады и атмосферу вообще. )
Рома вообще молодец - не постеснялся все это организовать и собрать народ!
Надеюсь я тогда не сильно его достал своими вопросами про плагины :)]]></description>
			<content:encoded><![CDATA[<p>Да ребята, было душевно &#8211; Саше, Игорю и Роме спасибо за доклады и атмосферу вообще. )<br />
Рома вообще молодец &#8211; не постеснялся все это организовать и собрать народ!<br />
Надеюсь я тогда не сильно его достал своими вопросами про плагины 🙂</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: tundrax		</title>
		<link>https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2178</link>

		<dc:creator><![CDATA[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><![CDATA[Проблема такова:

Имеется типичная модель из 2 таблиц с 1  N релейшн, скажем Категории и Субкатегории.
При создании новой категории, в главную форму вкладывается 1 форма для субкатегории. Это указано в методе configure() формы Категория.
И рядом линк &quot;Добавить субкатегорию&quot; которая через аях впихивает новую пустую субформу субкатегории.

Так в методе bind() главной формы embeddedForms содержит ту форму которая изначально была вложна в методе configure(), а которая через аях впихана в embeddedForms нету.

configure() :

$i = 0;
    $wrapperForm = new sfForm();

    if (!$this-&#062;isNew())
    {
      foreach ($this-&#062;getObject()-&#062;getDates() as $date)
      {
        $wrapperForm-&#062;embedForm($i, new EDateForm($date));
        $i++;
      }
    }

    $wrapperForm-&#062;embedForm($i, new EDateForm());
    $this-&#062;embedForm(&#039;date_forms&#039;, $wrapperForm);


Action which adds new form via ajax:

$wrapperForm = new sfForm();
      $wrapperForm-&#062;embedForm($dfc + 1, new EDateForm());
      $form = new EForm();
      $form-&#062;embedForm(&#039;date_forms&#039;, $wrapperForm);
      
      $this-&#062;form = $form[&#039;date_forms&#039;][$dfc + 1];

      $dfc++;
      $this-&#062;getUser()-&#062;setAttribute(&#039;dfc&#039;, $dfc);

      return $this-&#062;renderPartial(&#039;date-form&#039;);

bind() method of a parent form:

foreach ($this-&#062;embeddedForms[&#039;date_forms&#039;]-&#062;getEmbeddedForms() as $k =&#062; $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-&#062;embeddedForms[&#039;date_forms&#039;][$k], $taintedValues[&#039;date_forms&#039;][$k]);
        $this-&#062;validatorSchema[&#039;date_forms&#039;][$k] = new sfValidatorPass();
      }
    }]]></description>
			<content:encoded><![CDATA[<p>Проблема такова:</p>
<p>Имеется типичная модель из 2 таблиц с 1  N релейшн, скажем Категории и Субкатегории.<br />
При создании новой категории, в главную форму вкладывается 1 форма для субкатегории. Это указано в методе configure() формы Категория.<br />
И рядом линк &#8220;Добавить субкатегорию&#8221; которая через аях впихивает новую пустую субформу субкатегории.</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[&#8216;date_forms&#8217;][$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[&#8216;date_forms&#8217;]-&gt;getEmbeddedForms() as $k =&gt; $dateForm)<br />
    {<br />
      if (is_null($taintedValues[&#8216;date_forms&#8217;][$k][&#8216;starts_at_date&#8217;]) || strlen($taintedValues[&#8216;date_forms&#8217;][$k][&#8216;starts_at_date&#8217;]) === 0)<br />
      {<br />
        unset($this-&gt;embeddedForms[&#8216;date_forms&#8217;][$k], $taintedValues[&#8216;date_forms&#8217;][$k]);<br />
        $this-&gt;validatorSchema[&#8216;date_forms&#8217;][$k] = new sfValidatorPass();<br />
      }<br />
    }</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: ingvar		</title>
		<link>https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2165</link>

		<dc:creator><![CDATA[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><![CDATA[Обсуждали немного, но без докладов. Обещали в следующий раз подготовить формы, генераторы, TDD. А какие собственно проблемы с формами?]]></description>
			<content:encoded><![CDATA[<p>Обсуждали немного, но без докладов. Обещали в следующий раз подготовить формы, генераторы, TDD. А какие собственно проблемы с формами?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: tundrax		</title>
		<link>https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2164</link>

		<dc:creator><![CDATA[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><![CDATA[Хорошо что есть интерес, и люди собираются по поводу Симфони.
Хотелось унзать ничего про ФОРМЫ не говорили? Особенно интересно узнать кто как решет проблемы вложенных форм.]]></description>
			<content:encoded><![CDATA[<p>Хорошо что есть интерес, и люди собираются по поводу Симфони.<br />
Хотелось унзать ничего про ФОРМЫ не говорили? Особенно интересно узнать кто как решет проблемы вложенных форм.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: ingvar		</title>
		<link>https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2156</link>

		<dc:creator><![CDATA[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><![CDATA[Спасибо pilot :).
Из твоего доклада по роутингу я тоже много чего нового и интересного узнал]]></description>
			<content:encoded><![CDATA[<p>Спасибо pilot :).<br />
Из твоего доклада по роутингу я тоже много чего нового и интересного узнал</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: pilot		</title>
		<link>https://tigor.com.ua/blog/2009/05/19/ua-symfony-ua-camp-small-report/comment-page-1/#comment-2154</link>

		<dc:creator><![CDATA[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><![CDATA[хорошая презентация, так как во всех проектах на переводы обычно мало времени, и по этому в такие дебри и не пытались залезать, но после твоего доклада можно смело нырять.

Главное, что это очень сильно упростит управление переводами сайта на другие языки.

Респект!]]></description>
			<content:encoded><![CDATA[<p>хорошая презентация, так как во всех проектах на переводы обычно мало времени, и по этому в такие дебри и не пытались залезать, но после твоего доклада можно смело нырять.</p>
<p>Главное, что это очень сильно упростит управление переводами сайта на другие языки.</p>
<p>Респект!</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/

Page Caching using Disk: Enhanced 

Served from: tigor.com.ua @ 2025-08-12 19:00:07 by W3 Total Cache
-->