'yii\base\InvalidConfigException' with message 'Invalid CAPTCHA action ID:
2017-07-12 22:10
513 查看
纠结的问题 最后只是选择了默认的配置
上代码:
model :
控制器:
view:
解决:
怎么调整都不行 之后跟踪到报错的位置: /vendor/yiisoft/yii2/captcha/CaptchaValidator.php:81
发现了这样的一行代码
这时候验证码不显示 怀疑是权限的问题 ,添加了红色的部分 ok
上代码:
model :
public function rules() { return [ ['username', 'filter', 'filter' => 'trim'], ['username', 'required'], ['username', 'unique', 'targetClass' => '\common\models\Adminuser', 'message' => '用户名已经存在.'], ['username', 'string', 'min' => 2, 'max' => 255], ['email', 'filter', 'filter' => 'trim'], ['email', 'required'], ['email', 'email'], ['email', 'string', 'max' => 255], ['email', 'unique', 'targetClass' => '\common\models\Adminuser', 'message' => '邮件地址已经存在.'], ['password', 'required'], ['password', 'string', 'min' => 6], ['password_repeat','compare','compareAttribute'=>'password','message'=>'两次输入的密码不一致!'], ['nickname','required'], ['nickname','string','max'=>128], ['profile','string'], ['verifyCode','captcha', 'captchaAction' => '/backend/Adminuser/captcha'], ]; }
控制器:
public function actions() { return [ 'error' => [ 'class' => 'yii\web\ErrorAction', ], 'captcha' => [ 'class' => 'yii\captcha\CaptchaAction', 'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null, ], ]; }
view:
<?= $form->field($model,'verifyCode')->widget(Captcha::ClassName(),[ 'captchaAction' => 'Adminuser/captcha', 'template' => '<div class="row"><div class="col-lg-3">{image}</div><div class="col-lg-6">{input}</div></div>', ]) ?>
解决:
怎么调整都不行 之后跟踪到报错的位置: /vendor/yiisoft/yii2/captcha/CaptchaValidator.php:81
发现了这样的一行代码
$ca = Yii::$app->createController($this->captchaAction);
public $captchaAction = 'site/captcha';所以呢 怀疑是model里面的配置的问题 现在去掉了 model,view 里面的
'captchaAction' => '/backend/Adminuser/captcha'
控制器也去掉了 关于captcha的配置 然后不在报错
这时候验证码不显示 怀疑是权限的问题 ,添加了红色的部分 ok
public function behaviors() { return [ 'access' => [ 'class' => AccessControl::className(), 'rules' => [ [ 'actions' => ['login', 'error','captcha'], 'allow' => true, ], [ 'actions' => ['logout', 'index'], 'allow' => true, 'roles' => ['@'], ], ], ], 'verbs' => [ 'class' => VerbFilter::className(), 'actions' => [ 'logout' => ['post'], ], ], ]; }
相关文章推荐
- Class yii\base\InvalidConfigException
- yii Exception (Exception) 'yii\base\Exception' with message 'Failed to change permissions for direc
- yii\base\InvalidConfigException The directory is not writable by the Web process
- org.apache.shiro.config.UnresolveableReferenceException: The object with id [myRealm1] has not yet b
- idhttp post 出现exception class EIdSocketError with message 'Socket Error # 10054的解决办法
- InvalidPathException: No action config found for the specified url.
- machine learning in action出现ValueError: invalid literal for int() with base 10: 'largeDoses'
- 报错 Exception 'yii\db\Exception' with message 'SQLSTATE[HY000]
- Class yii\base\InvalidValueException
- org.apache.struts.chain.commands.InvalidPathException: No action config found for the specified url.
- 严重: Servlet.service() for servlet action threw exception org.apache.struts.chain.commands.InvalidPathException: No action config
- InvalidPathException: No action config found for the specified url.
- 安装yii2时出错 Invalid Parameter – yii\base\InvalidParamException
- Fix: "Sys.InvalidOperationException: Two components with the same id
- Class yii\base\InvalidParamException
- [JPA] javax.persistence.EntityNotFoundException: Unable to find com.duona.base.bean.Business with id
- IT忍者神龟之com.octo.captcha.service.CaptchaServiceException: Invalid ID, could not validate unexisting o
- Exception 'yii\db\Exception' with message 'SQLSTATE[HY000] [2002] No such file or directory’错误的解决方法
- 安装yii2时出错 Invalid Parameter – yii\base\InvalidParamException
- Python中ValueError: invalid literal for int() with base 10 的实用解决办法