2016-12-05 47 views
0

這是我的控制器代碼。但是這不起作用。這裏有什麼問題?如何檢索Laravel 5.3中的表中的所有數據?

class Subnet_Behind_ClientController extends Controller 
{ 
    /** 
    * Display a listing of the resource. 
    * 
    * @return \Illuminate\Http\Response 
    */ 
    public function index(Request $request) 
    { 
     // 
     $datas = Subnet_behind_client::all(); 
     $data = $datas->first(); 

     /* $data = Subnet_behind_client::all();*/ 

     return view('subnet_behind_clients',compact('data')); 
    } 

    /** 
    * Show the form for creating a new resource. 
    * 
    * @return \Illuminate\Http\Response 
    */ 
    public function create() 
    { 
     // 

     $data = Subnet_behind_client::create([ 
    'client_id' => $request->client_id, 
    'ip_address' => $request->ip_address, 
    'netmask' => $request->netmask, 

    return view('subnet_behind_clients1',compact('data')); 
    // other properties here 
]); 

    } 

    /** 
    * Store a newly created resource in storage. 
    * 
    * @param \Illuminate\Http\Request $request 
    * @return \Illuminate\Http\Response 
    */ 
    public function store(Request $request) 
    { 
     // 

    /* $data = Subnet_behind_client::all(); 
     dd($data); 

     $data->client_id = $request->client_id; 
     $data->ip_address = $request->ip_address; 
     $data->netmask = $request->netmask;*/ 
     // $data->clients = $request->clients; 

/* 
     $data->created_at = new DateTime; 
     $data->updated_at = new DateTime;*/ 
     $datas = Subnet_behind_client::all(); 
     $data = $datas->first(); 

     $data->client_id = $request->client_id; 
     $data->ip_address = $request->ip_address; 
     $data->netmask = $request->netmask; 

     $data->save(); 
     return back(); 

    } 

    /** 
    * Display the specified resource. 
    * 
    * @param int $id 
    * @return \Illuminate\Http\Response 
    */ 
    public function show(Request $request) 
    { 
     // 

      /* $data = Subnet_behind_client::all();*/ 
      $datas = Subnet_behind_client::all(); 
     $data = $datas->first(); 

     return view('view2',compact('data')); 
    } 

} 

我試着爲它創建另一個頁面來使用create方法。這會有幫助嗎?因爲我認爲我正在更新記錄而不是添加它。

+0

肯定'first()'總是要返回一條記錄嗎?你甚至在哪裏使用'first()'? –

+0

$ data = Subnet_behind_client :: all(); ....這裏代替所有() – gaan10

+0

所以如果你'dd($ data);'你會得到什麼? –

回答

0

假設我想爲User設置數據,那麼需要在對錶執行操作之前初始化實例;

$user = new User;//Object initialization 
$user->username = $request->username;//Assign column value 
$user->role_id = $request->role_id;//Assign column value 
$user->email = $request->email;//Assign column value 
$user->save();//Store records by `save` method 

//Check for success 
if($user){ 
    //Redirect success, with success message 
} 
else { 
    //Redirect error, with error message 
} 

請在basic of laravel Insert上評論相同。

UPDATE:更換show方法下面一個

public function show(Request $request) 
{ 
    $data = $datas->get(); 

    return view('view2',compact('data')); 
} 
+0

此代碼不能正常工作 – gaan10

+0

有沒有什麼?提供一些有助於理清問題的提示。 –

0
$data = Subnet_behind_client::create([ 
    'client_id' => $request->client_id, 
    'ip_address' => $request->ip_address, 
    'netmask' => $request->netmask, 

    return view('subnet_behind_clients1',compact('data')); 
    // other properties here 
]); 

這裏是一個錯誤,你的回報是內部create()方法。它應該是這樣的。

$data = Subnet_behind_client::create([ 
    'client_id' => $request->client_id, 
    'ip_address' => $request->ip_address, 
    'netmask' => $request->netmask, 
]); 


return view('subnet_behind_clients1',compact('data')); 

請解釋您從哪個路由調用的方法,以便我們更容易調試。

相關問題