小编Hom*_*ien的帖子

如何改变Laravel 5.1中的环境?

我对Laravel环境工作的理解是,您在不同的环境中拥有不同的环境.因此,如果您在本地运行应用程序,则可以拥有一个.env.local文件.如果您正在测试或正在进行生产,您可以使用.env.testing或.env.production.(如果我错了,请纠正我.)
默认情况下,我们获取.env可以编辑的文件.但任何人都可以告诉我在Laravel中改变环境的工作流程是什么.我尝试了文档,但我无法得到它.请帮我.

php environment-variables production-environment test-environments laravel

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

我可以通过Laravel 5.1中的自定义请求对象验证后恢复输入字段值吗?

假设我有一个简单的联系表格.

<form action="/message" method="post">
    {!! csrf_field() !!}
    <div class="form-group">
        <label>Name: </label>
        <input type="text" name="name" class="form-control">
    </div>

    <div class="form-group">
        <label>Email: </label>
        <input type="email" name="email" class="form-control">
    </div>

    <div class="form-group">
        <label>Your Message: </label>
        <textarea name="message" class="form-control"></textarea>
    </div>

    <div class="form-group">
        <button class="btn btn-primary">Submit Message</button>
    </div>
</form>
Run Code Online (Sandbox Code Playgroud)

这是我的控制器来处理该请求:

public function sendMessage(ContactRequest $request)
{
    dd($request->all());
}
Run Code Online (Sandbox Code Playgroud)

请注意,我正在注入ContactRequest对象,因此验证工作正常.

问题

如何在联系表单中恢复旧的输入值?这样用户就不必重新填充所有字段.

php validation laravel laravel-5.1

13
推荐指数
2
解决办法
8804
查看次数

如何急切加载单个雄辩对象的关系?

我有这个Comment模型属于关系。

class Comment extends Model
{
    public function user()
    {
        return $this->belongsTo('App\User');
    }
}
Run Code Online (Sandbox Code Playgroud)

在我的控制器中:

public function store(Request $request)
{
    $comment = $this->dispatch(
        new StoreCommentCommand($request->body, Auth::user()->id, $request->post_id)
    );

    return $comment;
}
Run Code Online (Sandbox Code Playgroud)

当我返回$comment我还想要嵌套的用户对象时,我该怎么做?

rest json laravel eloquent

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

Laravel Socialite 2.0 Facebook身份验证仅返回ID和名称

我正在使用Laravel的Socialite包(版本2.0.0).它对谷歌和github很有用但是当我尝试用facebook登录时,我得到了这个:

ErrorException in FacebookProvider.php line 89:
Undefined index: first_name
Run Code Online (Sandbox Code Playgroud)

在FacebookProvider.php错误是从这个方法:

protected function mapUserToObject(array $user)
{
    return (new User)->setRaw($user)->map([
        'id' => $user['id'], 'nickname' => null, 'name' => $user['first_name'].' '.$user['last_name'],
        'email' => isset($user['email']) ? $user['email'] : null, 'avatar' => $this->graphUrl.'/'.$this->version.'/'.$user['id'].'/picture?type=normal',
    ]);
}
Run Code Online (Sandbox Code Playgroud)

如果我在这个映射之前dd()的$user参数.我只获得身份验证和经过身份验证的Facebook用户的名称.所以,这意味着我没有收到Facebook用户的电子邮件.我至少需要name和email用户.

经过dd()这种方法看起来是这样的:

protected function mapUserToObject(array $user)
{
    dd($user);
    return (new User)->setRaw($user)->map([
        'id' => $user['id'], 'nickname' => null, 'name' => $user['first_name'].' '.$user['last_name'],
        'email' => isset($user['email']) ? $user['email'] : null, …
Run Code Online (Sandbox Code Playgroud)

php facebook facebook-graph-api laravel laravel-socialite

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

如何在Laravel 5.1中为作业创建子目录?

我正在使用Laravel 5.1.一般来说,我做的工作php artisan make:job SomeJobName.这基本上会SomeJobName在app/Jobs目录中创建一个作业.但是,如果我的应用程序是巨大的.我最终会在该文件夹中包含大量文件.我想整理一下.我想创建子目录,如:

app/Jobs/Users/
   Store.php
   Update.php
   Delete.php
app/Jobs/Posts
   Store.php
   Update.php
   Delete.php
Run Code Online (Sandbox Code Playgroud)

建议的方法是什么?

php laravel laravel-5 laravel-5.1

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