symfony sfFormでラベルと値を表示するwidget

sfFormで入力画面を作成する場合、各項目はwidgetを設定していきますが、
項目名と設定値を表示するのみのwidgetがありません。

入力させたくないけど、画面には表示したいというケースは結構あると思います。
プラグイン等もなさそうなので、専用のwidgetを作成してみました。

class myWidgetFormInputHiddenShowValue extends sfWidgetForm
{
  protected function configure($options = array(), $attributes = array())
  {
    // デフォルトは'div'タグで表示
    $this->addOption('tag', 'div');

    $this->setOption('is_hidden', false);
  }

  public function render($name, $value = null, $attributes = array(), $errors = array())
  {
    // hiddenタグを作成
    $hiddenTag = $this->renderTag('input', array('type' => 'hidden', 'name' =>$name, 'value'=>$value, 'class'=>null));
    if($this->getOption('tag'))
    {
      // 値表示用タグを作成
      $content =  $this->renderContentTag($this->getOption('tag'), $value, $attributes);
    } else {
      // タグ指定がなければ設定値を表示
      $content = $value;
    }
    return $content.$hiddenTag;
  }
}

オプションの’tag’で表示する際に使用するタグを指定できるようにしています。
デフォルトは’div’タグで表示します。
タグが必要ない場合は、’tag’=>nullと指定すれば値だけを表示します。

○ 以下使用例
$this->widgetSchema[‘name’] = new myWidgetFormInputHiddenShowValue(array(), array(‘class’=>’show_label’));

○出力結果
<div class="show_label">hogehoge</div><input type="hidden" name="content[name]" value="hogehoge" id="content_name_id" />

ソースを見れば、簡単に拡張ができるのがsymfonyの良いところですね。
(もし、デフォルトで出来るのであれば突っ込みお願いします)

この投稿へのコメント

  1.   said on 2021/05/31 at 6:05 AM

    件名

    コロナウイルスを増やしてるのは【米国防総省】米国スパイのゴミども

    感染、症状もこいつらが作り出してる

    〈本題〉

    【創価の魔の正体は米国のAI(人工知能)】

    創価を日本統治に利用してる組織がCIA(極悪スパイ)

    学会員は頻繁に病気や事故に遭うので、信者は皆、魔(仏罰、現証)にやられてると思ってます

    学会活動に励んだら病状が良くなるんで、多くの信者が、数百万、何千万円ものお布施をする

    Alが作った病気をAlが弱めて、病状が良くなったように見せかけ、莫大なお布施をさせる

    10年前の創価の財務が年間2,500億円(無税)、1日あたり6億8,500万円

    資産が10兆円超え、世界1位の企業だったトヨタ以上の資産額

    米国スパイが、軍事技術でイカサマして集めたお金

    腹痛、腰痛等の痛み全般、病気、悪臭、争い、うつ病、認知症、自殺、殺人、事故、火災、台風、地震など

    この世のほぼ全ての災いを【米国防総省】がAIを使った軍事技術で、秘密裏に作り出してる

    北朝鮮を操ってミサイルを打たせたり、蚊を操って刺させたり

    雑菌を増やして耐え難い臭いにしたり、蚊、コバエを増やしたりもします

    同じ手法で、コロナウイルスも増やす

    AIを用いたレジ不要のコンビニ

    このコンビニは、人の動き、音声、商品棚の重さ等をAIが調べて、お客が商品を持って出ると、スマホで自動精算されるので、レジが不要

    この仕組みからわかる事は、AIは多くの人の言動を見逃さずに、1度に管理出来る

    このAIの技術を【米国防総省】が悪用し、人工衛星を使い、全人類を24時間365日体制で管理して、学会員や悪さした人を病気にしたり、事故らせたりして災いを与えます

    こんなに大規模な犯罪なのに、世間に浸透してないのは、AIが遠隔から各個人の生活を管理して、生活に沿った病気や痛みを与えてきたから

    重い物を持ったら腕に痛みを与えたり、ツラい事があったら、うつにしたり

    スパイの犯行なので、相手に覚られず、私生活に便乗して、違和感を持たせずやる

    【この犯罪の主犯は米国防総省】

    的確に攻撃するGPSは、米国防総省が軍事目的で開発、管理運用もここがする

    全人類を管理してるAlを使ってスパイ活動するNSA(政府)も、米国防総省の管轄なので、この犯罪は米国スパイによる犯罪

    騒音攻撃に至っては、救急車の音で嫌がらせする為に、AIが遠隔から痛みを与えて病人を作り出しますし

    パトカーが付きまといをする集団ストーカーは、Alが警官を操って、いかにも警察が嫌がらせしてるように工作

    「救急車、ノイズキャンペーン」「パトカー、集スト」等で検索すると出ます

    行く所行く所で周りの人が咳払いしたり、くしゃみをしたりする集ストは、AIが被害者の周りの人に周波を当てて、咳払いやくしゃみをさせてるだけ

    いかにも集団でストーカーしてると思わせて、心理的な痛手を負わせる

    咳をした時の周波数と同じ周波を当てると、人為的に咳を出させる事ができる

    TBSラジオ90.5MHz、ニッポン放送93.0MHzに周波数を合わせると、これらのラジオを聴けます

    これと同じように、周波数を変える事で、意識操作や精神疾患を作り出す

    蛍光灯に虫が集まるのは、ある決まった周波数の紫外線に、吸い寄せられてるから

    虫ですら周波で操作が可能

    家の中に害虫を呼び込んだり、カラスを屋根の上に集めて暴れさせたり鳴かせたり、犬を吠えさせる嫌がらせ等も、AIが軍事技術を用いてやる

    27~38Hzで不眠に、48~55Hzで喘息に、88Hzで片頭痛が引き起こされます

    それぞれの病気が、それぞれ決まった周波数を持つ

    これらの周波数と同じ周波を当てれば、どんな病気でも作り出せる

    周波(波動)は目に見えんから証拠が残らん、だからやりたい放題やる

    国が周波を見えるようにして、こいつらの動きを監視すれば、この犯罪は激減する

    この犯罪を終わらせる鍵は、宗教法人への課税、公明党(創価)を政権の座から下ろす、周波の見える化

    https://shinkamigo.wordpress.com

コメントを残す

メールアドレスが公開されることはありません。

この投稿へのトラックバック

トラックバックはありません。

トラックバック URL