CakePHP3には $this->Form->inputを使ってラベルとinput要素を記述することができますが、ラベル名をモデル側で定義することはできるのでしょうか?またカスタマイズになる気がしますが、モデルでラベル名が定義されていれば labelオプションをつけずともよいという指定はできますか?
現状以下の実装しか思いつきません。。。
-- Controller --
public function example(){
$this->set("l_email","電子メール");
}
-- ctpファイル --
<?= $this->Form->input('email',[ 'label' => $l_email]) ?>例えば、ASP.NET MVCなんかでは Display属性を使うことでモデル側に定義し、View側でそのメタデータ情報を引っ張ることができます。
-- Model --
public class Example
{
[Required]
[EmailAddress]
[Display(Name = "電子メール")]
public string Email { get; set; }
}
-- Example View --
<div class="form-group"> @Html.LabelFor(m => m.Email, new { @class = "col-md-2 control-label" }) <div class="col-md-10"> @Html.TextBoxFor(m => m.Email, new { @class = "form-control" }) </div> </div>
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。