小编dev*_*l Ψ的帖子

如何在laravel雄辩中选择特定的列

假设我在表中有7列,我想只选择其中两列,就像这样

SELECT `name`,`surname` FROM `table` WHERE `id` = '1';
Run Code Online (Sandbox Code Playgroud)

在laravel雄辩的模型中,它可能看起来像这样

Table::where('id', 1)->get();
Run Code Online (Sandbox Code Playgroud)

但我想这个表达式会选择id等于1的所有列,而我只想要两列(name,surname).如何只选择两列?

orm laravel eloquent laravel-5

95
推荐指数
14
解决办法
23万
查看次数

在laravel中批量插入后获取记录ID

我正在使用laravel 5.4我希望在将它们插入表格后得到记录ID.这是我要插入的数据,它存储在数组中

$data = [
  [
    "count" => "100",
    "start_date" => 1515628800
  ],
  [
    "count" => "102",
    "start_date" => 1515715200
  ]
];
Run Code Online (Sandbox Code Playgroud)

在这里我一次插入项目数组

\Auth::user()->schedule()->insert($data);
Run Code Online (Sandbox Code Playgroud)

但是这个方法返回了boolean,我希望在插入这些新项目之后得到这些新项目的ID(或所有列),我该怎么做?它是否会用eloquent或完成并不重要querybuilder.我已经尝试过insertGetId方法,但它似乎不适用于多维数组.如果不能用laravel,那么实现它的最佳方法是什么?

php laravel laravel-5

5
推荐指数
1
解决办法
2019
查看次数

Laravel 密码确认不起作用

我制作了注册表单,但密码有问题。我在密码字段中输入完全相同的密码并确认密码字段但它失败了

The password confirmation confirmation does not match.
Run Code Online (Sandbox Code Playgroud)

我的注册表单

<div class="form-group">
   {!! Form::password('password', ['class' => 'form-control','placeholder' => '*Password']) !!}
</div>
<div class="form-group">
   {!! Form::password('password_confirmation', ['class' => 'form-control', 'placeholder' => '*Password Confirm']) !!}
</div>
Run Code Online (Sandbox Code Playgroud)

我的验证

'password' => 'required|between:8,255',
'password_confirmation' => 'confirmed',
Run Code Online (Sandbox Code Playgroud)

我也试试这个

'password' => 'required|between:8,255',
'password_confirmation' => 'required|between:8,255|confirmed',
Run Code Online (Sandbox Code Playgroud)

和这个

'password' => 'required|between:8,255|confirmed',
 'password_confirmation' => 'required|between:8,255|confirmed',
Run Code Online (Sandbox Code Playgroud)

但仍然不起作用

validation laravel laravel-5

3
推荐指数
2
解决办法
2万
查看次数

雄辩地一次插入多个记录

我有多维数组,我想用我的模型在一个查询中插入所有数据,我知道我可以使用DB查询生成器类来做到,就像

 DB::table('table')->insert([ 
     ['name' => 'foo'],
     ['name' => 'bar'],
     ['name' => 'baz']
 ]);
Run Code Online (Sandbox Code Playgroud)

但是我该如何使用模型呢? Model::create()不会插入多个记录,我也不想插入带有循环的项目。能否雄辩地做到这一点?

laravel eloquent laravel-5

2
推荐指数
1
解决办法
5609
查看次数

将获取参数添加到laravel的重定向方法中

我使用laravel 5.6

我有GET要传递给重定向功能的参数。

Route::get('/about', function () {
   //I want to add param to this redirect function
   return redirect('/en/about');
});
Run Code Online (Sandbox Code Playgroud)

如果路由/about?param=123在重定向后看起来像,param 将丢失。有没有办法将参数添加到重定向方法?如我所见,此函数不包含输入参数。该参数是可选的,因此可能不提供。也许有办法重写此功能?或其他解决方案?所有建议将不胜感激

更新

是否可以覆盖该redirect()方法?我认为这将是最好的解决方案

php laravel laravel-5

2
推荐指数
3
解决办法
6672
查看次数

在laravel中找不到供应商类

我在项目中使用unisharp文件管理器。在我的本地计算机上,一切正常,但在远程服务器上[Symfony\Component\Debug\Exception\FatalErrorException] Class 'Unisharp\Laravelfilemanager\LaravelFilemanagerServiceProvider' not foundconfig/app.php一切正常都抛出错误

    /*FileMananger*/
    Unisharp\Laravelfilemanager\LaravelFilemanagerServiceProvider::class,
    Intervention\Image\ImageServiceProvider::class,
    /*CKEditor*/
    Unisharp\Ckeditor\ServiceProvider::class,
Run Code Online (Sandbox Code Playgroud)

unisharpvedor中有目录(因此所有文件和目录都在其中)。当我尝试运行composer install / update时,再次出现此错误。所以一切都在正确的位置,但是laravel没有看到此类。

comoser.json

{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
    "php": ">=5.6.4",
    "laravel/framework": "5.3.*",
    "maatwebsite/excel": "~2.1.0",
    "appzcoder/crud-generator": "^1.2",
    "laravelcollective/html": "^5.3",
    "lavary/laravel-menu": "dev-master",
    "nesbot/carbon": "^1.21",
    "laracasts/flash": "^2.0",
    "spatie/laravel-medialibrary": "^3.11",
    "firebase/php-jwt": "^4.0",
    "doctrine/dbal": "^2.5"
},
"require-dev": {
    "fzaninotto/faker": "~1.4",
    "mockery/mockery": "0.9.*",
    "phpunit/phpunit": "~5.0",
    "symfony/css-selector": "3.1.*",
    "symfony/dom-crawler": "3.1.*"
},
"autoload": {
    "classmap": [
        "database"
    ], …
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-5 laravel-5.3

1
推荐指数
1
解决办法
3171
查看次数

用户未经授权时Laravel护照自定义错误消息和状态代码

我的项目正在运行Laravel 5.4,我通常使用passportapi通过api进行身份验证bearer token。一切正常,但是当未经授权的用户尝试访问需要身份验证的资源时,该用户会收到错误消息405 method not allowed 在此处输入图片说明

但我希望得到回应401 unauthorized。如何更改此设置,仅发送带有消息的响应,而不发送异常?我做了调查,但没有发现任何东西。我使用标准laravel中间件授权auth:api。我的路线归入中间件

Route::group(['middleware' => 'auth:api'], function () {
  // these routes should return 401 if user not authenticated
}
Run Code Online (Sandbox Code Playgroud)

authentication oauth laravel laravel-5 laravel-passport

0
推荐指数
1
解决办法
3814
查看次数