无法看到刀片Laravel 5.4的变化

时间:2017-03-18 13:54:17

标签: php laravel

我最近开始学习Laravel 5.4并且到目前为止一直很好,但是我在.blade文件中显示最新数据时遇到了问题 - 它就像Laravel有某种愚蠢的缓存

注意:我使用共享托管,无法在服务器上使用控制台进行php工匠(但我可以在代码中运行它们)

在路线中我像这样呼叫控制器

Route::get('/home', 'PostController@get');

PostController.php

<?php

namespace App\Http\Controllers;


use Illuminate\Support\Facades\Auth;
use Validator;
use Session;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Illuminate\Routing\Controller;
use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\DB;

class PostController extends Controller
{

/**
 * Home page
 *
 * @return void
 */
public function get(Request $request)
   {



        //$artisan = Artisan::call('view:clear'); -->failed attempt of clearing

       $posts = DB::table('posts')
       ->leftJoin('users','posts.id_user_post','=','users.id_user')
       ->orderBy('id_post','desc')
       ->get();

      if($request->session()->has('id'))
         {
            $options = DB::table('users')
            ->select('avatar_url_user','cookies_user','settings_user')
            ->where('id_user','=',$request->session()->get('id'))
            ->get();

            return view('home',['posts' => $posts,'options' => $options]);
         }



       //$posts = DB::table('posts')->leftJoin('users','posts.id_user_post','=','users.id_user')->orderBy('id_post','desc')->get();
       // $user =  DB::table('users')->where()
       return view('home',['posts' => $posts,'options'=>0]);

   }

}

home.blade.php

...
{{ $options }}
...

如果我把它改为{{&#34;某事&#34;它会显示&#34;某些东西&#34;如果我将其更改为$ options,那么它仍将保留&#34;某些东西&#34;

我搜索了一个解决方案,我确实在Stack Overflow上找到了一些问题,但没有一个问题解决了我的问题(或者已经过时了)

因此,如果有人能够向我解释如何逐步解决这个问题,那就很好了

1 个答案:

答案 0 :(得分:0)

你的if语句需要“else”。现在发生的是,如果条件为真,你仍然会看到相同的视图(这是最后一个视图)并不重要。但这只是我认为的错误之一。如果你正在使用 - &gt; get(),你需要在视图中说foreach($ options as $ option)... @endforeach。如果你只想要一行(或模型作为laravel放置它)你可以说 - &gt; first()。

祝你好运