Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Yii 更改数组中的占位符文本_Yii - Fatal编程技术网

Yii 更改数组中的占位符文本

Yii 更改数组中的占位符文本,yii,Yii,我正在使用yii用户扩展,并尝试向“占位符”属性添加适当的标签。对Yii来说真的很新鲜,所以仍然在努力掌握事物 我在类的models文件夹中添加了attributeLabels()方法 class RegistrationForm extends User { /** * Declares attribute labels. */ public function attributeLabels() { return array(

我正在使用yii用户扩展,并尝试向“占位符”属性添加适当的标签。对Yii来说真的很新鲜,所以仍然在努力掌握事物

我在类的models文件夹中添加了
attributeLabels()
方法

class RegistrationForm extends User {
       /**
     * Declares attribute labels.
     */
    public function attributeLabels()
    {
        return array(
            'email'=>'Email Address',
            'firstname'=>'First Name',
            'lastname' => 'Last Name',
                    'verifyPassword' = 'Retype Password'
        );
    }
} 
这是我的/views/文件夹中的代码

       $form=$this->beginWidget('bootstrap.widgets.TbActiveForm', array(
            'id'=>'registration-form',
            'type'=>'vertical',
            'enableClientValidation'=>true,
            'clientOptions'=>array(
                'validateOnSubmit'=>true,
            ),
        ));


    <?php echo $form->textField($model,'email', array('class' => 'input-block-level', 'placeholder' => 'email')); ?>

            <?php echo $form->passwordField($model,'password', array('class' => 'input-block-level', 'placeholder' => 'password')); ?>

            <?php echo $form->passwordField($model,'verifyPassword', array('class' => 'input-block-level', 'placeholder' => 'verifyPassword')); ?>  


    <?php 
        $profileFields=Profile::getFields();
        if ($profileFields) {
            foreach($profileFields as $field) {

        if ($widgetEdit = $field->widgetEdit($profile)) {
            //echo $widgetEdit;
        } elseif ($field->range) {
            echo $form->dropDownList($profile,$field->varname,Profile::range($field->range),array('class' => 'input-block-level'));
        } elseif ($field->field_type=="TEXT") {
            echo $form->textArea($profile,$field->varname,array('rows'=>6, 'cols'=>50));
        } else {
            //echo $field->varname;
            if ($field->varname == 'firstname')
            {
                $placeholder = 'First Name';
            }
            else if ($field->varname == 'lastname')
            {
                $placeholder = 'Last Name';
            }
            else 
            {
                $placeholder = $field->varname; 
            }
echo $form->textField($profile,$field->varname,array('size'=>60,'maxlength'=>(($field->field_size)?$field->field_size:255),'class' => 'input-block-level', 'placeholder' => $placeholder));
        }

        echo $form->error($profile,$field->varname); 

            }
        }
?>
$form=$this->beginWidget('bootstrap.widgets.TbActiveForm',数组(
'id'=>'registration-form',
'类型'=>'垂直',
“enableClientValidation”=>true,
'clientOptions'=>数组(
“validateOnSubmit”=>true,
),
));

如何使
attributeLabels()
处理我的
echo$form->textField($profile,$field->varname,array('size'=>60,'maxlength'=>($field->field\u size)?$field->field\u size:255),'class'=>'input block level','placeholder'=>$placeholder')

您可以使用
getAttributeLabel
()获取指定属性的文本标签,如下所示:

E.x:


您可以使用
getAttributeLabel
()获取指定属性的文本标签,如:

E.x:


您可以使用
getAttributeLabel
()获取指定属性的文本标签,如:

E.x:


您可以使用
getAttributeLabel
()获取指定属性的文本标签,如:

E.x:


您不必编辑
类注册表单扩展用户

打开受保护的/modules/user/model/user.php

attributeLabels()
方法中添加/编辑自定义标签

public function attributeLabels()
{
    return array(
        'id' => UserModule::t("Id"),
        'username'=>UserModule::t("username"),
        'password'=>UserModule::t("Password"),
        'verifyPassword'=>UserModule::t("Retype Password"),
        'firstname'=>UserModule::t("First Name"), //ADDED
        'lastname'=>UserModule::t("Last Name"), // ADDED
        'email'=>UserModule::t("Email Address"), //EDITED
        'verifyCode'=>UserModule::t("Verification Code"),
        'activkey' => UserModule::t("Activation Key"),
        'createtime' => UserModule::t("Registration Date"),
        'create_at' => UserModule::t("Registration Date"),
        'lastvisit_at' => UserModule::t("Last Visit"),
        'superuser' => UserModule::t("Superuser"),
        'status' => UserModule::t("Status"),
    );
}
并获取要在视图文件中显示的标签。用这个

<?php echo $form->passwordField($model,'verifyPassword',
              array('class' => 'input-block-level', 
             'placeholder' => $model->getAttributeLabel('email')));
?>

您不必编辑
类注册表单扩展用户

打开受保护的/modules/user/model/user.php

attributeLabels()
方法中添加/编辑自定义标签

public function attributeLabels()
{
    return array(
        'id' => UserModule::t("Id"),
        'username'=>UserModule::t("username"),
        'password'=>UserModule::t("Password"),
        'verifyPassword'=>UserModule::t("Retype Password"),
        'firstname'=>UserModule::t("First Name"), //ADDED
        'lastname'=>UserModule::t("Last Name"), // ADDED
        'email'=>UserModule::t("Email Address"), //EDITED
        'verifyCode'=>UserModule::t("Verification Code"),
        'activkey' => UserModule::t("Activation Key"),
        'createtime' => UserModule::t("Registration Date"),
        'create_at' => UserModule::t("Registration Date"),
        'lastvisit_at' => UserModule::t("Last Visit"),
        'superuser' => UserModule::t("Superuser"),
        'status' => UserModule::t("Status"),
    );
}
并获取要在视图文件中显示的标签。用这个

<?php echo $form->passwordField($model,'verifyPassword',
              array('class' => 'input-block-level', 
             'placeholder' => $model->getAttributeLabel('email')));
?>

您不必编辑
类注册表单扩展用户

打开受保护的/modules/user/model/user.php

attributeLabels()
方法中添加/编辑自定义标签

public function attributeLabels()
{
    return array(
        'id' => UserModule::t("Id"),
        'username'=>UserModule::t("username"),
        'password'=>UserModule::t("Password"),
        'verifyPassword'=>UserModule::t("Retype Password"),
        'firstname'=>UserModule::t("First Name"), //ADDED
        'lastname'=>UserModule::t("Last Name"), // ADDED
        'email'=>UserModule::t("Email Address"), //EDITED
        'verifyCode'=>UserModule::t("Verification Code"),
        'activkey' => UserModule::t("Activation Key"),
        'createtime' => UserModule::t("Registration Date"),
        'create_at' => UserModule::t("Registration Date"),
        'lastvisit_at' => UserModule::t("Last Visit"),
        'superuser' => UserModule::t("Superuser"),
        'status' => UserModule::t("Status"),
    );
}
并获取要在视图文件中显示的标签。用这个

<?php echo $form->passwordField($model,'verifyPassword',
              array('class' => 'input-block-level', 
             'placeholder' => $model->getAttributeLabel('email')));
?>

您不必编辑
类注册表单扩展用户

打开受保护的/modules/user/model/user.php

attributeLabels()
方法中添加/编辑自定义标签

public function attributeLabels()
{
    return array(
        'id' => UserModule::t("Id"),
        'username'=>UserModule::t("username"),
        'password'=>UserModule::t("Password"),
        'verifyPassword'=>UserModule::t("Retype Password"),
        'firstname'=>UserModule::t("First Name"), //ADDED
        'lastname'=>UserModule::t("Last Name"), // ADDED
        'email'=>UserModule::t("Email Address"), //EDITED
        'verifyCode'=>UserModule::t("Verification Code"),
        'activkey' => UserModule::t("Activation Key"),
        'createtime' => UserModule::t("Registration Date"),
        'create_at' => UserModule::t("Registration Date"),
        'lastvisit_at' => UserModule::t("Last Visit"),
        'superuser' => UserModule::t("Superuser"),
        'status' => UserModule::t("Status"),
    );
}
并获取要在视图文件中显示的标签。用这个

<?php echo $form->passwordField($model,'verifyPassword',
              array('class' => 'input-block-level', 
             'placeholder' => $model->getAttributeLabel('email')));
?>



@secrettlm我把它放在
类注册表单中扩展了
模型中的用户{
对吗?我得到了这个
配置文件,它的行为没有名为“getAttributeLabels”的方法或闭包。
@user2636556:从控制器传递到视图的$model变量没有getAttributeLabels()。请在您的模型类中定义getAttributeLabels()函数,该函数在视图中创建了$Model变量。仍然不起作用,请告诉我
htmlspecialchars()期望参数1为字符串,数组给定
@secrettlm btw,我在模型文件`公共静态函数getAttributeLabels(){return array'中添加了此函数('firstname'=>'First Name','lastname'=>'Last Name',);}`我用
$model->getAttributeLabels('firstname')
@secrettlm来调用它,我把它放在
类注册表单扩展了
模型中的用户{
,对吗?我得到了这个
配置文件,它的行为没有名为“getAttributeLabels”的方法或闭包.
@user2636556:您从控制器传递到视图的$model变量没有getAttributeLabels()。请在您的模型类中定义getAttributeLabels()函数,该函数在视图中创建了$model变量。仍然不起作用,给我
htmlspecialchars()期望参数1是字符串,数组给定
@secrettlm顺便说一句,我在我的模型文件`公共静态函数getattributeLabels(){return array('firstname'=>'firstname','lastname'=>'Last Name',);}`中添加了这个参数,我通过
$model->getattributeLabels('firstname')调用它
@secrettlm我把它放在
类注册表单中扩展了
模型中的用户{
对吗?我得到了这个
配置文件,它的行为没有名为“getAttributeLabels”的方法或闭包。
@user2636556:从控制器传递到视图的$model变量没有getAttributeLabels()。请在您的模型类中定义getAttributeLabels()函数,该函数在视图中创建了$Model变量。仍然不起作用,请告诉我
htmlspecialchars()期望参数1为字符串,数组给定
@secrettlm btw,我在模型文件`公共静态函数getAttributeLabels(){return array'中添加了此函数('firstname'=>'First Name','lastname'=>'Last Name',);}`我用
$model->getAttributeLabels('firstname')
@secrettlm来调用它,我把它放在
类注册表单扩展了
模型中的用户{
,对吗?我得到了这个
配置文件,它的行为没有名为“getAttributeLabels”的方法或闭包.
@user2636556:您从控制器传递到视图的$model变量没有getAttributeLabels()。请在您的模型类中定义getAttributeLabels()函数,该函数在视图中创建了$model变量。仍然不起作用,给我
htmlspecialchars()期望参数1是字符串,数组给定
@secrettlm顺便说一句,我在我的模型文件`公共静态函数getattributeLabels(){return array('firstname'=>'firstname','lastname'=>'lastname',);}`中添加了这个参数,我通过
$model->getattributeLabels('firstname')调用它。