标签: laravel-5

如何安装Laravel 5.0

我无法启动并运行Laravel 5.0的测试实例,因此我可以协助进行此转换.

1)从https://github.com/laravel/laravel/tree/develop创建新应用程序会导致运行时出现以下错误composer install.

{"error":
    {"type":"ErrorException",
     "message":"Undefined index: timezone",
     "file":"\/Projects\/indatus\/dispatcher-test-app\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/start.php",
     "line":167}
}
{"error":
    {"type":"ErrorException",
     "message":"Undefined index: timezone",
     "file":"\/Projects\/indatus\/dispatcher-test-app\/vendor\/laravel\/framework\/src\/Illuminate\/Foundation\/start.php",
     "line":167}}
Run Code Online (Sandbox Code Playgroud)

我完全错过了什么吗?

更新:这个问题/答案仅在Laravel 5处于开发阶段时才有意义.您现在应该参考Laravel文档来了解如何安装Laravel

php laravel composer-php laravel-5

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

如何在Laravel 5中构建模块化应用程序?

我想将我的应用程序分成模块.例如,会有一个"核心"模块,其中包含基本登录功能,应用程序布局/格式(CSS等),用户管理和日记.

稍后我可以创建其他模块,如联系人管理器,可以轻松地从应用程序中添加或删除.

应用程序导航中会有一些逻辑用于确定存在哪些模块以及显示/隐藏指向它们的链接.

我如何在目录结构,命名空间和其他任何需要的方面做到这一点?


我正在看creolab/laravel-modules,但是它说它适用于Laravel 4.我还能以完全相同的方式使用它吗?

文档说在每个模块目录中放置模型,控制器和视图,但这如何与路由一起使用?理想情况下,我希望每个模块都有自己的routes.php文件.如何将所有的东西这项工作httpresources目录?


我在考虑这样的事情:

模块的想法

但我不知道如何让它发挥作用.


我刚刚在这里尝试了教程:

http://creolab.hr/2013/05/modules-in-laravel-4/

没有额外的库等,只需要纯粹的Laravel 5.

我似乎碰到了一堵砖墙,上面写着错误信息:

FatalErrorException in ServiceProvider.php line 16:
Call to undefined method Illuminate\Config\Repository::package()
Run Code Online (Sandbox Code Playgroud)

关于以下内容:

<?php namespace App\Modules;

abstract class ServiceProvider extends \Illuminate\Support\ServiceProvider
{

    public function boot()
    {
        if ($module = $this->getModule(func_get_args())) {
            $this->package('app/' . $module, $module, app_path() . '/modules/' . $module);
        }
    }

    public function register()
    {
        if ($module = $this->getModule(func_get_args())) {
            $this->app['config']->package('app/' . $module, app_path() . '/modules/' . $module . '/config');

// Add routes …
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-routing laravel-5

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

如何在laravel 5中使用Storage facade获取文件路径?

我一直在尝试使用与Laravel 5的新Flysystem集成.我正在将"本地化"路径存储到数据库,并使存储外观完成路径.例如,我存储screenshots/1.jpg和使用

Storage::disk('local')->get('screenshots/1.jpg')
Run Code Online (Sandbox Code Playgroud)

要么

Storage::disk('s3')->get('screenshots/1.jpg') 
Run Code Online (Sandbox Code Playgroud)

我可以在不同的磁盘上检索相同的文件.

get 检索文件内容,但我希望在我的视图中使用它,如下所示:

<img src="{{ Storage::path('screenshots/1.jpg') }}" />
Run Code Online (Sandbox Code Playgroud)

但路径,或任何能够检索完整路径的东西都不可用(据我所见).那我怎么能回到完整的路径呢?或者,我想知道这是否是设计的?如果是这样,为什么我不应该能够获得完整的路径?或者,我是否完全以错误的方式解决这个问题?

php laravel-5 flysystem

68
推荐指数
6
解决办法
16万
查看次数

find(),findOrFail(),first(),firstOrFail(),get(),list(),toArray()之间有什么区别

这些方法有什么区别

  1. 找()
  2. findOrFail()
  3. 第一()
  4. firstOrFail()
  5. 得到()
  6. 名单()
  7. 指定者()

我一直在使用它们,每个都给出了不同的结果,有时我需要find()在结尾处添加,findOrFail()因为我的函数期待一个数组.其他方法也不会产生数组吗?

php laravel laravel-5

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

Laravel Middleware将变量返回给控制器

我正在对用户执行权限检查以确定他们是否可以查看页面.这涉及首先通过一些中间件传递请求.

我遇到的问题是我在将数据返回到视图本身之前,在中间件和控制器中复制相同的数据库查询.

以下是设置示例;

- routes.php

Route::get('pages/{id}', [
   'as' => 'pages',
   'middleware' => 'pageUser'
   'uses' => 'PagesController@view'
]);
Run Code Online (Sandbox Code Playgroud)

- PageUserMiddleware.php(类PageUserMiddleware)

public function handle($request, Closure $next)
    {
        //get the page
        $pageId = $request->route('id');
        //find the page with users
        $page = Page::with('users')->where('id', $pageId)->first();
        //check if the logged in user exists for the page
        if(!$page->users()->wherePivot('user_id', Auth::user()->id)->exists()) {
            //redirect them if they don't exist
            return redirect()->route('redirectRoute');
        }
        return $next($request);
    }
Run Code Online (Sandbox Code Playgroud)

- PagesController.php

public function view($id)
{
    $page = Page::with('users')->where('id', $id)->first();
    return view('pages.view', ['page' => $page]); …
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-5 laravel-middleware

66
推荐指数
7
解决办法
5万
查看次数

雄辩的ORM laravel 5获取ID数组

我正在使用Eloquent ORM laravel 5.1,我想返回一个大于0的id数组,我的模型叫做test.

我试过了 :

$test=test::select('id')->where('id' ,'>' ,0)->get()->toarray();
Run Code Online (Sandbox Code Playgroud)

它返回:

Array ( [0] => Array ( [id] => 1 ) [1] => Array ( [id] => 2 ) )
Run Code Online (Sandbox Code Playgroud)

但我希望结果是简单的数组,如:

Array ( 1,2 )
Run Code Online (Sandbox Code Playgroud)

php model laravel eloquent laravel-5

65
推荐指数
7
解决办法
9万
查看次数

queue:work --daemon和queue:listen之间有什么区别

我正在设置我的离线作业服务器.我已经阅读了文档,但我仍然没有看到两个命令之间的差异:artisan queue:work --daemonartisan queue:listen.我应该使用哪个命令来运行我的守护进程?

laravel laravel-4 laravel-5

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

未定义的变量:Laravel中的错误

当我想在我的laravel项目中注册用户时,页面总是说

未定义的变量:错误(查看:/var/www/resources/views/auth/register.blade.php)"

根据Laravel文档,$errors应始终自动设置:

因此,重要的是要注意每个请求的所有视图中都会提供$ errors变量,这样您就可以方便地假设$ errors变量始终定义并且可以安全使用.

我使用时在每个视图上都有这个:

@if (count($errors) > 0)
    <div class="alert alert-danger">
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif
Run Code Online (Sandbox Code Playgroud)

或者当我想使用$errors变量时的任何其他方式.

为什么是这样?我之前从未遇到过这个问题.

有谁可以帮助我吗?

laravel laravel-5 laravel-validation laravel-middleware laravel-5.2

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

Laravel 5.2 - 使用字符串作为Eloquent Table的自定义主键变为0

我正在尝试使用电子邮件作为我的表的主键,所以我雄辩的代码是 -

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class UserVerification extends Model
{
    protected $table = 'user_verification';
    protected $fillable =   [
                                'email',
                                'verification_token'
                            ];
    //$timestamps = false;
    protected $primaryKey = 'verification_token';
}
Run Code Online (Sandbox Code Playgroud)

我的DB就像这样 -

在此输入图像描述

但如果我这样做 -

UserVerification::where('verification_token', $token)->first();
Run Code Online (Sandbox Code Playgroud)

我得到这个 -

{
  "email": "sdfsdf@sdfsdf.sdf",
  "verification_token": 0,
  "created_at": "2016-01-03 22:27:44",
  "updated_at": "2016-01-03 22:27:44"
}
Run Code Online (Sandbox Code Playgroud)

因此,验证令牌/主键变为0.

有人可以帮忙吗?

php mysql laravel eloquent laravel-5

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

哎呀,看起来像出事了.Laravel 5.0

http://localhost/laravel/public/说,当我将它运行到浏览器时,我通过克隆git和composer安装来正确安装Laravel 5.0

"哎呀,看起来像出事了."

作曲家安装后我没有做任何改动.

将env.example复制到.env后更新这是结果

compile.php第5599行中的RuntimeException:需要OpenSSL扩展名.

php laravel-5

59
推荐指数
5
解决办法
16万
查看次数