php – 无法使Laravel 4的Validator类在框架之外工作
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 无法使Laravel 4的Validator类在框架之外工作,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1745字,纯文字阅读大概需要3分钟。
内容图文
![php – 无法使Laravel 4的Validator类在框架之外工作](/upload/InfoBanner/zyjiaocheng/744/4d81e828c5564ef680e6efc0d3b1813b.jpg)
我试图在框架之外使用Laravel’4 Eloquent,因为Illuminate / Database包可以通过作曲家独立使用.
Eloquent本身工作正常,但我阻止尝试实现验证规则.
我先尝试过一些像Ardent这样的预建库,然后使用我自己的代码,但结果却是一样的,我得到了这个致命的错误:
Fatal error: Call to a member function make() on a non-object in
vendor\illuminate\support\Illuminate\Support\Facades\Facade.php on
line 177
当我调用Validator :: make()时,问题总是开始;
$validator = Validator::make(
$this->attributes,
array('name' => 'required')
);
看看调试似乎是static :: resolveFacadeInstance(‘validator’);被调用,但它只返回null.
我不熟悉Facades如何工作,有人能指出我正确的方向吗?谢谢!
这是我的composer.json:
{
"require": {
"illuminate/database": "~4.0",
"illuminate/validation" : "~4.0",
"laravelbook/ardent": "dev-master"
},
"config": {
"preferred-install": "dist"
},
"minimum-stability": "dev"
}
解决方法:
对于那些可能需要更多信息的人,我将在这里报告由bencorlett (link)在laravel的github回购中给出的答案:
// Store the factory instance somewhere, Maybe like:
class Validator {
protected static $factory;
public static function instance()
{
if ( ! static::$factory)
{
$translator = new Symfony\Component\Translation\Translator('en');
static::$factory = new Illuminate\Validation\Factory($translator);
}
return static::$factory;
}
public static function __callStatic($method, $args)
{
$instance = static::instance();
switch (count($args))
{
case 0:
return $instance->$method();
case 1:
return $instance->$method($args[0]);
case 2:
return $instance->$method($args[0], $args[1]);
case 3:
return $instance->$method($args[0], $args[1], $args[2]);
case 4:
return $instance->$method($args[0], $args[1], $args[2], $args[3]);
default:
return call_user_func_array(array($instance, $method), $args);
}
}
}
$validator = Validator::make($data, $rules);
内容总结
以上是互联网集市为您收集整理的php – 无法使Laravel 4的Validator类在框架之外工作全部内容,希望文章能够帮你解决php – 无法使Laravel 4的Validator类在框架之外工作所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。