2016-09-14 4 views
1

私は間違っているかもしれませんが、Radiosの実装方法であると確信しています。あなたのモデルに$だけ公開されているので、デフォルトで値が設定されている「公開済み」と「公開されていません」のラジオボタンを表示する方法はありません。Phalconは値を検索しません。名前属性、 お持ちの場合:Phalcon Forms Elementにラジオボタンを実装する方法

$this->add(new Radio('published', array('name' => 'published', 'value' => 'Y'))); 
$this->add(new Radio('not_published', array('name' => 'published', 'value' => 'N'))); 

最後のラジオボタンのみがレンダリングされています。これはあなたがラジオに期待する動作ではありません!当然のことながら、Phalconは私たちがどちらを参照しているのかわからないので、両方のラジオが「公開された」という名前を付けることはできず、依然としてPhalconはこれらの名前を使用してデフォルト値を取得します。

解決策をご存知の方はお尋ねください。

+0

これはPhalcon 3.0で問題ではありませんラジオボタン –

+0

を実装しながら、これは共通の問題です。私はちょうどコードスニペットをコピーしてみました。 (両方のラジオボタンがレンダリングされます) – Timothy

+0

あなたの情報のおかげで、別のバージョンのPhalconを使用している可能性があります。 – yemanda

答えて

2

私は同じ問題に直面しています。私は誰もが同じproble.itに直面していることはまったく役に立たないようです。私は誰かが私を間違っていると証明してくれることを願っていますが、2つの依存ラジオボタンのグループを作る方法を理解できません。

//「公開された」名前の最後の要素であるため、//ラジオだけをレンダリングしますか?

use Phalcon\Forms\Element\Radio; 

$yes = new Radio("published", array("id" => "myYes", "value" => 1)); 
$yes->setLabel("YES!"); 

$no = new Radio("published", array("id" => "myNo", "value" => 2)); 
$no->setLabel("NO!"); 

私たちは複数のラジオボタンをどのようにレンダリングできますか?このソリューションは動作します

 $attr = array(
      'name' => 'published' 
     ); 
     $yes = new \Phalcon\Forms\Element\Radio("Yes", $attr); 
     $no = new \Phalcon\Forms\Element\Radio("No", $attr); 

     $this->add($yes); 
     $this->add($no); 

希望:私たちはvalidatrions、フィルタを添付したいので、もちろん、私たちはここで

は、私が来たソリューションです..フォーム要素\ラジオを\ \このPhalconを必要としています。

0

私はphalconの問題を修正していないので、これを私のコードに使用します。

`` `

$attr = ['value' => Employee::GENDER_MALE, 'name' => 'gender']; 
    if (!empty($entity) && $entity->getGender() == Employee::GENDER_MALE || $this->request->getPost('gender') == Employee::GENDER_MALE) { 
     $attr += ['checked' => 'checked']; 
    } 
    $el = new Radio('genderMale', $attr); 
    $el->setLabel(t('Male')); 
    $this->add($el); 

    $attr = ['value' => Employee::GENDER_FEMALE, 'name' => 'gender']; 
    if (!empty($entity) && $entity->getGender() == Employee::GENDER_FEMALE || $this->request->getPost('gender') == Employee::GENDER_FEMALE) { 
     $attr += ['checked' => 'checked']; 
    } 
    $el = new Radio('genderFemale', $attr); 
    $el->setLabel(t('Female')); 
    $this->add($el); 

` ``

関連する問題