2016-05-16 4 views
0

Я создаю crud, который использует волшебника в Laravel. Мне интересно, как я мог бы получить nextval() определенной таблицы, чтобы сохранить ее как сеанс.Извлечение nextval() из PostgreSQL из laravel?

В настоящее время я делаю это как это от моего контроллера:

public function index() 
{ 
    // get all the reports 
    $reports = Reports::all(); 
    $query = "select nextval('app_reports_mgmt.reports_rid_seq')"; 
    $next_rid = Reports::raw($query)->get(); 
    Session::put('next_rid', $next_rid); 

    // load the view and pass the reports 
    return View::make('templates.reports') 
     ->with('reports', $reports); 
} 

, но каждый раз, когда я распечатать next_rid, он на самом деле хранятся все данные в таблице. Это длинный результат, но вот фрагмент вывода:

[{"rid": 4, "name": "Test validation table test", "encryption": "test", "internal_external": " Внешний »,« клиент »:« Учетная запись 1 »,« isdateappended »:« Нет »,« savewithmacro »:« xlsx »,« deleteeconnections »:« True »,« nameofemailbodysheet »:« 1 »,« validationtables »:« 5 " "validationchecks": "", "customemailtext": "3", "report_status": "МСЗ", "custom_email_subject": "2", "report_pc": "ccrep-ес-rbox02", "pc_user":" report-eu "," custom_attachment_name ".......

Я просматривал ларакасты и еще пару веб-сайтов, но, похоже, нет никакой функции Laravel для получения следующей таблицы. Спасибо заранее.

ответ

2

Вы можете использовать функцию value().

public function index() 
{ 
    // get all the reports 
    $reports = Reports::all(); 
    $query = "nextval('app_reports_mgmt.reports_rid_seq') as nxt"; 
    $next_rid = Reports::selectRaw($query)->value('nxt'); 
    Session::put('next_rid', $next_rid); 

    // load the view and pass the reports 
    return View::make('templates.reports') 
     ->with('reports', $reports); 
} 
+1

Ничего себе .. Спасибо большое сэр .. – Odinovsky

Смежные вопросы