coodeer

黄毅
第 4447 位会员
注册于 2016-05-18 23:22:52
活跃于 2017-07-26 19:26:36


PHPer
专栏文章
没有任何数据~~
最近话题
最新评论
  • 请教一下,Laravel 使用 Ajax 提交数据时 validate 验证返回 422 响应这个有什么好的处理方法吗? at 2017-07-20 10:04:09

    如果你使用了Illuminate\Foundation\Http\FormRequest,验证失败就会自己返回422。

    或者可以:

    <?php
    use Illuminate\Support\Facades\Response;
    use Illuminate\Validation\ValidationException;
    
    if (! $validator->passes()) {
        $errors = $validator->getMessageBag()->toArray();
        $response = Response::json($errors, 422);
    
        throw new ValidationException($validator, $response);
    }
  • PHP 对二维数组指定的 key 排序 at 2017-07-08 09:03:09

    usort

  • 为什么我不太想用 Laravel ? at 2017-06-29 14:48:00

    楼主描述的痛点并不是痛点嘛,至少不是我的痛点。而Laravel本身却是基于PHP的生态痛点出发的。
    感觉让楼主放弃Laravel的锅最终甩给了IDE,或许是楼主太追求完美了:sweat_smile:

    说说槽点。

    1. 你能这样使用Eloquent,说明Laravel已经解决能你这个痛点了
    2. Facade本身是一种设计模式,其目的就是为了隐藏模块的复杂性,如果不想反直觉而一眼看透,你可以选择绕过Facade
    3. 路由这种东西,你习惯了symfony就好,用自己习惯太吐槽别人的习惯,有点讲牵强,毕竟萝卜白菜,各有所爱,就像有人喜欢symfony的风格,所以实现了annotations
    4. 语义化本是Laravel一大亮点,在楼主这却成了痛点,这点我不服:joy:
    5. 最后楼主说,以上问题本质上不是什么大问题,所以这篇文章的本质是给楼主赞人气的吧:)
  • migration 文件提示:Method 'create' not found in Illuminate\Support\Facades\Schema 怎么解决? at 2017-05-02 10:11:11

    你截图的仅是IDE的提示,不能表示是PHP的错误。至于为什么IDE会提示create方法找不到,需要你先弄明白Facade这种设计模式(自行在社区搜索一下)。不过也可以借助laravel-ide-helper这类开源组件让你的IDE有正常的提示。如果不能正常运行你的迁移命令,建议检查一下laravel日志来定位你的错误。

  • 给 Homestead 的文件类型设置为 nfs 产生的问题? at 2017-03-16 10:27:40

    最近刚好在Windows下踩过这个坑,希望能够帮到你。

    这是Vagrant1.9.2的一个关于转换windows UNC path的Bug,修复方式如下:

    1. 找到文件D:\HashiCorp\Vagrant\embedded\gems\gems\vagrant-1.9.2\lib\vagrant\util\platform.rb,注意替换D:\HashiCorp为你自己的安装地址,然后用编辑器打开。

    2. 找到第206行,并将其替换为下面这行代码(建议用#注释,便于复原)
    path.gsub("/", "\\")

    完成以上,你就可以再次尝试vagrant up,看看是否生效,但愿能解决你的问题。关于这个Bug的详情,在Github上有详细讨论,可以去这里阅读:https://github.com/mitchellh/vagrant/issues/8352

  • Laravel where 写法 at 2017-01-26 18:57:17

    @小丑路人 就是这个意思,whereRaw可以添加一个原生where字句。

    可以看看官方API的说明。

    https://laravel.com/api/5.3/Illuminate/Database/Query/Builder.html#method_whereRaw

  • Laravel where 写法 at 2017-01-26 18:22:36

    Myrootid后面我不小心多敲了一个空格,去掉应该就好了吧

  • Laravel where 写法 at 2017-01-26 15:39:44
    Category::where('isCheck', 1)
        ->whereRaw('instr(`Myrootid `, ?)', [",$id,"])
        ->get();

    不知道是不是你想要的。

  • 写在 Laravel China 社区正式突破 10000 用户之际 at 2017-01-18 12:09:56

    赞👍🏻

  • Rbac-Laravel 拓展包,轻松搞定权限控制! at 2017-01-17 11:42:12

    @springjk 世上本没有轮子,造的人多了就有了轮子。造个轮子未必是为了竞争,用了能满足简单需求,不用不影响功能,没有什么优化之说。发出来也本是为了相互学习。😌

  • Laravel Auth 重定向 at 2017-01-15 00:28:05

    您用的是不是百度翻译😂

  • 类似 Laravel 框架这样显式路由的写法真的好吗? at 2017-01-12 12:49:22

    @JokerRoc 脱离框架来说吧,我觉着,一个系统就好比一本书,路由就是这本书的目录索引,一个好的目录对于书的重要性可想而知。而这种维护成本不应该是我们想要做减法的那一部分吧?所以值不值得,就在于愿不愿意去著一本好书。

    另外,在做了很多Web之外的项目后,逐渐会发现隐式路由局限性太大了,用一个Github的接口为例子,/repos/:owner/:repo/issues/:issue_number/timeline,类似这样的URL怎么很好地用隐式路由实现?退一步来讲,这类URL咱们就直接使用显示路由好了,那么问题又来了,两种路由并存才是维护的灾难吧。当然你也可以认为两种方式并存是OK,存在即合理嘛。

    其实我并没有冒犯你的意思。当年在没有接触Laravel之前,我也使用Yii、CI,当时也觉得这种路由方式没毛病,完全OK啊。所以,好坏在于自己的主观意识。大家共勉😊

  • 类似 Laravel 框架这样显式路由的写法真的好吗? at 2017-01-12 10:39:25

    @JokerRoc 受教了😁

    我还是再说说我的观点吧。我说的自由,就是指Laravel可以实现你任何想要的,包括你的提到的“隐式路由”,就像2楼提供的方法。

    然而,我只是不推荐这种模式而已,毕竟明确定义路由才能更好地管理路由。管理代码也是一门艺术啊。

    如果你说定义很多路由会导致“开发上麻烦、可读性差、无法快速定位Controller文件这几个问题”,我只能理解为你没有管理好你的代码。

    最后,你提到的效率问题,那就是仁者见仁的事情了,我认为牺牲一定运行效率来提高开发效率是很有必要的,何况运行效率更应该从架构层面入手,多几个路由能影响多少毫秒的效率?

    哈哈,欢迎继续拍砖。

  • (已解决) Laravel 5.2 怎么处理 Emoji 表情? at 2017-01-11 22:18:59

    @Dee 没必要修改MySQL配置的,依次检查你的数据库、表、字段的字符集设置即可

  • (已解决) Laravel 5.2 怎么处理 Emoji 表情? at 2017-01-11 20:37:07

    修改成utf8mb4就足够了,至于为什么显示???,就和你的系统或者你的mysql终端有关系了。emoji这东西需要你的系统或宿主软件的支持。

  • Laravel 用户认证的疑问 at 2017-01-11 19:48:10

    SessionGuard里面的name只是你应用使用的guard名,在配置文件auth.php的defaults选项里,比如你使用的是web,那么这个name就是web,SessionGuard::getName()返回的字符串只是session数组里的一个key而已,而这个key对应的value就是当前登录用的ID。

    你想了解Session的具体流程应该看illuminate/session

  • 类似 Laravel 框架这样显式路由的写法真的好吗? at 2017-01-11 17:58:25

    Laravel给了你更多的自由,但是你不想要自由,我还有什么好说的😂

    1. Route和Controller是两个东东,为什么一定要绑定在一起?
    2. 有些场景根本不需要Controller啊,比方说一个静态页面,这时候你去定义一个Controller是不是多此一举?
    3. 如果同一个Controller的方法需要被多个路由共用呢?
    4. 如果你是在开发RESTFUL API,你描述的隐式路由怎么体现HTTP动词?
    5. Route多了你可以分文件甚至分文件夹管理啊,Laravel并有没有强制要求你只使用一个route.php。
    6. 你需要快速定位你的controller,你可以把uri注释在方法头部,然后全局搜索不就好了?
    7. Route和Controller更应该发挥好自己的职责,而不要抢了他人的风头,不然就混乱了。
    8. Laravel的Route有分组、中间件、别名、前缀等等诸多优秀的特性,你应该多关注这些。
    9. ...

    所以,你只是习惯了以前的Route,现在有一种更优秀Route的摆在你面前,你是否要去接纳呢?好了,好话不多说,剩下的自己去慢慢体会。https://laravel-china.org/docs/5.3/routing

  • 让 Laravel 优雅地创建 MySQL 全文索引 at 2017-01-10 14:08:04

    @wyg27 主要还是得益于自由的Laravel,使得拓展如此方便。

  • 我为什么选择 Laravel at 2017-01-09 23:42:44

    超喜欢Laravel的Collection,有木有同感的:smile:

  • Laravel 5.3 下通过 migrate 添加 “全文索引” 的方法 at 2017-01-09 02:23:15

    关于“如何添加全文索引”的问题正好之前我也有过研究,这是我的另外一种实现思路,也整理了一篇帖子,欢迎拍砖:stuck_out_tongue_winking_eye:

    https://laravel-china.org/topics/3600