public function store(ProjectRequest $request) { $speed = []; $time = $request->get('time'); $event = $request->get('event'); foreach ($time as $key => $value) { if ($time[$key] != '') { $speed[] = ['time' => strip_tags($time[$key]), 'event' => strip_tags($event[$key])]; } } $speed = array_sort($speed, function ($value) { return $value['time']; }); $speed = json_encode($speed); $project = Project::create(['title' => $request->get('title'), 'category_id' => $request->get('category_id'), 'sort' => $request->get('sort'), 'views' => $request->get('views'), 'tag' => $request->get('tag'), 'is_recommend' => $request->get('is_recommend'), 'is_show' => $request->get('is_show'), 'cover' => $request->get('cover'), 'thumb' => $request->get('thumb'), 'cost' => $request->get('cost'), 'period' => $request->get('period'), 'person_id' => $request->get('person_id'), 'info' => $request->get('info'), 'url' => $request->get('url'), 'keywords' => $request->get('keywords'), 'description' => $request->get('description'), 'text' => $request->get('text'), 'speed' => $speed, 'hash' => $request->get('hash')]); if ($project) { Cache::store('project')->flush(); Attachment::where(['hash' => $project->hash, 'project_id' => 0])->update(['project_id' => $project->id]); $message = '项目添加成功,请选择操作!'; $url = []; $url['返回项目列表'] = ['url' => route('admin.projects.index')]; if ($project->category_id > 0) { $url['返回栏目项目列表'] = ['url' => route('admin.projects.show', $project->category_id)]; } $url['继续添加'] = ['url' => route('admin.projects.create')]; $url['继续编辑'] = ['url' => route('admin.projects.edit', $project->id)]; $url['查看项目'] = ['url' => route('project.show', $project->id), 'target' => '_blank']; return Theme::view('admin.message.show', compact('message', 'url')); } }
/** * @param Request $request * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector */ public function store(Request $request) { // validation $this->validate($request, $this->validationRules); Project::create($request->all()); return redirect('projects'); }
/** * プロジェクト新規追加(Ajax) */ public function postCreate(Request $request) { $this->isAjax($request); $result = DB::transaction(function () use($request) { // seqの番号を取得 $selectSql = "\n\t\t\t\tSELECT\n\t\t\t\t\tMAX(seq) + 1 as maxSeq\n\t\t\t\tFROM\n\t\t\t\t\tprojects\n\t\t\t"; $data = DB::select($selectSql); if ($data[0]->maxSeq != null) { $seq = $data[0]->maxSeq; } else { $seq = 0; } // プロジェクト新規追加 $project = Project::create($request->all()); $project->seq = $seq; $project->save(); return $project->id; }); return \Response::json($result); }