Php 如何为DB insert传递对象?

Php 如何为DB insert传递对象?,php,database,laravel,controller,insert,Php,Database,Laravel,Controller,Insert,我需要将记录插入数据库。我应该如何通过控制器 例如,要删除记录,我传递Id,它看起来像 routes.php func: Route::get('/template/delete/{id}', array( 'as' => 'template_delete', 'uses' => 'ThoughtRiver\Template\Controllers\TemplateController@deleteTemplate' )); 控制器功能: public function delet

我需要将记录插入数据库。我应该如何通过控制器

例如,要删除记录,我传递Id,它看起来像

routes.php func:

Route::get('/template/delete/{id}', array(
'as' => 'template_delete',
'uses' => 'ThoughtRiver\Template\Controllers\TemplateController@deleteTemplate'
));
控制器功能:

public function deleteTemplate($id)
    {
        return DB::table('template')->where('Id', '=', $id)->delete();
    }
那么,在插入的情况下,如何传递记录对象呢? 它是一个后端函数,因此对象不应从窗体中获取。(来自http
请求后正文?

通常,您从表单中获取数据,因此使用请求对象获取数据:

public function store(Request $request)
{
    Model::create($request->all());
}

$request->all()
将使用提交表单中的数据创建一个数组。要使
create()
方法工作,您应该首先填充数组。

您需要处理数据的
HTML表单、路由和函数。它是后端函数,不应该存在任何表单。那么应该如何看待route func,如何翻译post请求正文呢?我发现这个教程可以帮助你创建@AmrAly非常有用的教程!谢谢这救了我。很高兴听到这个。我是php新手,你能告诉我route.php func应该是什么样子,以及在哪里填充可填充数组吗?我的数据不应该从表单中获取,它是一个后端函数。在这种情况下如何传递对象?Post request route?@Mira您应该在模型中创建并填充
$filleble
数组(如
User
)。路由应该看起来像
Route::post('some-data/store','SomeController@store)
。我建议你看一些拉威尔的教程或者读一本书,这样你就可以避免很多错误,节省很多时间。