2016-12-05 51 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')); 

请解释您从哪个路由调用的方法,以便我们更容易调试。

相关问题