Development

#5486 (access embedded form fields through generator.yml)

You must first sign up to be able to contribute.

Ticket #5486 (new enhancement)

Opened 6 months ago

Last modified 2 months ago

access embedded form fields through generator.yml

Reported by: syam Assigned to: fabien
Priority: minor Milestone: 1.3.0
Component: generator Version: 1.2.1
Keywords: generator embed form fields Cc:
Qualification: Unreviewed

Description

Admin generator can't handle fields separately from embedded form. I suggest generator.yml permit access embedded form fields like this :

form:    
  display: [embedformname1.embedformname2.field_name]

It permit more flexibility for designers in generated backend.


Example, have a foo form with an embed form containing inputs dummy1, dummy2, dummy3 ...

in sfFooForm.class.php

public function configure()
{
  $this->embedForm("bar",new sfBarForm);
}

in generator.yml

form:    
  display:
    "Main": [name, type, description]
    "Simple" : [bar.dummy1, bar.dummy2]
    "Advanced" : [bar.dummy3, bar.dummy4]
    "Option": [publish, share, expire_on]

This example is not possible because generator.yml can't access the "bar" fields.

The only possible way is using the embed form name :

in generator.yml

form:    
  display:
    "Main": [name, type, description]
    "Simple" : [bar]
    "Option": [publish, share, expire_on]

A workaround is possilbe by using partials with embedded form fields :

in generator.yml

form:    
  display:
    "Main": [name, type, description]
    "Simple" : [_bar1]
    "Advanced" : [_bar2]
    "Option": [publish, share, expire_on]

in _bar1.php

<div class="sf_admin_form_row sf_admin_text sf_admin_form_field_dummy1">
	<div>
		<label for="sf_document_dummy1">Dummy1</label>
		<?=$form["bar"]["dummy1"]->render() ?>
	</div>
</div>

But not really convenient for huge projects.

Change History

01/07/09 09:12:47 changed by fabien

  • milestone changed from 1.2.2 to 1.3.0.

03/23/09 00:24:39 changed by adrive

This will be a really good feature. That's what I am looking for now.

05/07/09 23:47:42 changed by eastman

This will be a really good feature. =;-)

The Sensio Labs Network

Since 1998, Sensio Labs has been promoting the Open-Source software movement by providing quality web application development, training, consulting, and supporting several large Open-Source projects.