Как настроить отображение sfWidgetFormInputText? - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть это в RcProfileTableForm.class.php

abstract class BaseRcProfileTableForm extends BaseFormPropel
{
public function setup()
{
  $this->setWidgets(array(
  'id'                                => new sfWidgetFormInputHidden(),
  'created_at'                        => new sfWidgetFormDateTime(),
  'name'                              => new sfWidgetFormInputText(),
  'password'                          => new sfWidgetFormInputText(),
  'unique_code'                       => new sfWidgetFormInputText(),
  'msisdn'                            => new sfWidgetFormInputText(),
  'profile_pic'                       => new sfWidgetFormInputText(),
  'email'                             => new sfWidgetFormInputText(),
  'age'                               => new sfWidgetFormInputText(),
 )
}

, и форма вызывается так:

<?php 
  include_partial('form', array('form' => $form));
  echo  $form->renderGlobalErrors(); ?>

, поэтому на реальной странице отображаются метка и поле вводачто мне нужно сделать сейчас, это добавить «*» в конец поля ввода msisdn и отправить по электронной почте * будет означать сообщение, соответствующее этим полям

как я могу этого достичь?нет нигде html, что я могу добавить к этому, потому что вся форма вызывается из виджетов

любой совет, пожалуйста?спасибо

1 Ответ

0 голосов
/ 01 сентября 2011

В вашей форме (RcProfileTableForm) вы можете добавить пользовательский ярлык

class  RcProfileTableForm extends BaseRcProfileTableForm
{
  public function configure()
  {
 $this->widgetSchema->setLabels(array(
  'email'    => 'email*',
}
// If you want to customize widget you can make:

 $this->widgetSchema['email'] = new sfWidgetFormInputText(array(), array("style"=>'width: 290px;'));

));

// UPADATE

Читать this

Таким образом, вы должны настроить частичную форму в apps / frontend / yourmodules / template / _form.php

В _form.php, я думаю, у вас теперь есть что-то вроде этого:

Вы можете сделать:

 <?php echo $form['email']->renderError(); ?>
 <?php echo $form['email']->render() ?> <?php echo  __("Email*"); ?> 
//or   
 <?php echo $form['email']->render() ?> $form['email']->renderLabel() ?>
...