标签: laravel-5

Laravel检查是否存在相关模型

我有一个Eloquent模型,它有一个相关的模型:

public function option() {
    return $this->hasOne('RepairOption', 'repair_item_id');
}

public function setOptionArrayAttribute($values)
{
    $this->option->update($values);
}
Run Code Online (Sandbox Code Playgroud)

当我创建模型时,它不一定具有相关模型.当我更新它时,我可能会添加一个选项.

所以我需要检查相关模型是否存在,分别更新或创建它:

$model = RepairItem::find($id);
if (Input::has('option')) {
    if (<related_model_exists>) {
        $option = new RepairOption(Input::get('option'));
        $option->repairItem()->associate($model);
        $option->save();
        $model->fill(Input::except('option');
    } else {
       $model->update(Input::all());
    }
};
Run Code Online (Sandbox Code Playgroud)

<related_model_exists>我正在寻找的代码在哪里.

php laravel eloquent laravel-4 laravel-5

128
推荐指数
5
解决办法
11万
查看次数

Laravel - Route :: resource vs Route :: controller

我阅读文档的Laravel网站,堆栈溢出,并且谷歌,但还是不明白之间的差别Route::resourceRoute::controller.

其中一个答案说Route :: resource是为了crud.但是,使用Route :: controller,我们可以完成与Route :: resource相同的操作,我们只能指定所需的操作.

他们看起来像兄弟姐妹:

Route::controller('post','PostController');
Route::resource('post','PostController');
Run Code Online (Sandbox Code Playgroud)

我们如何选择使用什么?什么是好习惯?

laravel laravel-4 laravel-5

122
推荐指数
1
解决办法
14万
查看次数

Laravel-5'LIKE'相当于(Eloquent)

我正在使用以下代码从Laravel 5中获取数据库中的一些结果.

BookingDates::where('email', Input::get('email'))->orWhere('name', 'like', Input::get('name'))->get()
Run Code Online (Sandbox Code Playgroud)

但是,orWhereLike似乎不匹配任何结果.该代码在MySQL语句方面产生了什么?

我正在尝试实现以下内容:

select * from booking_dates where email='my@email.com' or name like '%John%'
Run Code Online (Sandbox Code Playgroud)

提前致谢.

php mysql laravel-5

121
推荐指数
5
解决办法
24万
查看次数

Laravel 5 - 共享主机服务器中的清除缓存

问题很清楚.

php artisan cache:clear
Run Code Online (Sandbox Code Playgroud)

是否有任何解决方法来清除缓存,就像我们在CLI中使用的那样.我正在使用流行的共享托管服务,但根据我的计划,我没有控制面板访问权限.

**我想清除视图缓存.**

我看到了一个与此几乎相同的问题,但它对我没有帮助.

提前致谢.

php command-line-interface laravel-5

112
推荐指数
9
解决办法
35万
查看次数

如何将数据传递给Laravel 5中的所有视图?

我想在Laravel 5应用程序的所有视图中都可以访问一些默认数据.

我试图搜索它,但只找到Laravel 4的结果.我在这里阅读了文档"与所有视图共享数据" ,但我无法理解该怎么做.下面的代码应该放在哪里?

View::share('data', [1, 2, 3]);
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

php laravel laravel-5

111
推荐指数
5
解决办法
9万
查看次数

如何评论laravel .env文件?

我正在Laravel的一个项目中工作,我在.env文件设置中存储了一些设置,就像用于测试目的的几个参数一样,很少有参数用于实时工作所以我只是检查是否有任何方法可以在Laravel的.env文件中进行评论.

这是一个例子

/* Test Settings */
ACCESS_KEY=qwsdr
ACCESS_TOKEN=Bgcvfsx

/* Live Settings */
ACCESS_KEY=985AsdefG
ACCCESS_TOKEN=LFP994kL
Run Code Online (Sandbox Code Playgroud)

提前致谢!

php laravel laravel-5

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

如何在Laravel 5+中获取客户端IP地址?

我想在Laravel中获取客户端的IP地址.众所周知,使用PHP获取客户端的IP要容易得多$_SERVER["REMOTE_ADDR"].

它在核心PHP中运行良好,但是当我在Laravel中使用相同的东西时,它会提供服务器IP而不是访问者IP.

php laravel laravel-5 laravel-5.1 laravel-5.7

110
推荐指数
12
解决办法
17万
查看次数

laravel 5.3 new Auth :: routes()

最近我开始用laravel 5.3来写博客,但是我跑完后有一个问题 php artisan make:auth

当我运行它时,它将生成我的路线 web.php

这是其中的代码:

Auth::routes();

Route::get('/home', 'HomeController@index');
Run Code Online (Sandbox Code Playgroud)

然后我跑php artisan route:list,我发现很多动作,比如LoginController @ login ...

但我没有在我的身上找到这些动作App\Http\Controllers\Auth,这些是哪里?

还有什么是Auth::routes()代表,我找不到关于Auth的路线.

我需要别人的帮助,谢谢你回答我的问题

php laravel laravel-5 laravel-5.3

108
推荐指数
8
解决办法
13万
查看次数

Laravel 5 - 重定向到HTTPS

在我的第一个Laravel 5项目上工作,不确定在我的应用程序中强制使用HTTPS的逻辑位置和方式.这里的关键是有许多域指向应用程序,只有三分之二使用SSL(第三个是后备域,长篇故事).所以我想在我的应用程序逻辑而不是.htaccess中处理这个问题.

在Laravel 4.2中,我使用此代码完成了重定向,位于filters.php:

App::before(function($request)
{
    if( ! Request::secure())
    {
        return Redirect::secure(Request::path());
    }
});
Run Code Online (Sandbox Code Playgroud)

我认为中间件应该在这样的地方实现,但我不能完全理解这一点.

谢谢!

UPDATE

如果您像我一样使用Cloudflare,可以通过在控制面板中添加新的页面规则来实现.

php laravel laravel-routing laravel-5

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

laravel 5:找不到类'输入'

在我的routes.php档案中,我有:

Route::get('/', function () {

    return view('login');
});

Route::get('/index', function(){
    return view('index');
});

Route::get('/register', function(){
    return view('register');
});
Route::post('/register',function(){

    $user = new \App\User;
    $user->username = input::get('username');
    $user->email  = input::get('email');
    $user->password = Hash::make(input::get('username'));
    $user->designation = input::get('designation');
    $user->save();

});
Run Code Online (Sandbox Code Playgroud)

我有一个用户注册表.我也在表格中输入表格输入值routes.php.

但是当我注册用户时出现错误.错误:

FatalErrorException in routes.php line 61:
Class 'input' not found
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-5 laravel-5.1 laravel-5.2

103
推荐指数
7
解决办法
16万
查看次数