本文整理汇总了PHP中app\Posts::findOrFail方法的典型用法代码示例。如果您正苦于以下问题:PHP Posts::findOrFail方法的具体用法?PHP Posts::findOrFail怎么用?PHP Posts::findOrFail使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类app\Posts
的用法示例。
在下文中一共展示了Posts::findOrFail方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: update
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Requests\PostRequest $request, $id)
{
$post = Posts::where('id', $id)->firstOrFail();
if (!empty($request->file('image')) && $request->file('image')->isValid()) {
$destinationPath = public_path() . "/images/";
// upload path
$extension = $request->file('image')->getClientOriginalExtension();
// getting image extension
$fileName = $post->url . '.' . $extension;
// renameing image
$request->file('image')->move($destinationPath, $fileName);
// uploading file to given path
$post->image = $fileName;
}
$post->fill($request->only(['title', 'post']));
$post->save();
Posts::findOrFail($id)->tags()->detach();
$tags = [];
foreach ($this->getTags($request->input('tags')) as $tag) {
if (!empty($tag)) {
$isFind = Tags::where('name', $tag)->get()->count();
if ($isFind == 0) {
$tags[] = new Tags(['name' => $tag]);
} else {
$tags[] = Tags::where('name', $tag)->first();
}
}
}
$post->tags()->saveMany($tags);
return back();
}
示例2: update
/**
* Update the specified resource in storage.
*
* @param int $id
* @return Response
*/
public function update($id, Requests\PostsFormRequest $request)
{
$post = Posts::findOrFail($id);
$input = $request->all();
$input['alias'] = HelperFunctions::str2url($request->title);
$post->update($input);
$categories_ids = [];
foreach ($input['categories_list'] as $value) {
$category = Categories::findOrNew($value);
if ($category->exists) {
array_push($categories_ids, $value);
} else {
$category->name = $value;
$category->save();
array_push($categories_ids, $category->id);
}
}
$post->categories()->sync($categories_ids);
$tags_ids = [];
foreach ($input['tags_list'] as $value) {
$tag = Tags::findOrNew($value);
if ($tag->exists) {
array_push($tags_ids, $value);
} else {
$tag->name = $value;
$tag->save();
array_push($tags_ids, $tag->id);
}
}
$post->tags()->sync($tags_ids);
\Session::flash('success', 'Post updated');
return redirect('/');
}
示例3: postComment
function postComment(Request $request)
{
$all = $request->all();
$validator = Validator::make($all, ['comment' => 'required']);
if ($validator->fails()) {
$id = $all['id'];
$post = Posts::findOrFail($id);
$page_title = $post->title;
$data = compact('post', 'page_title');
return view('posts.show', $data)->withErrors($validator->errors());
}
$comment = Purifier::clean($all['comment'], 'markdown');
$user_id = Auth::user()->id;
$post_id = $all['id'];
$post = Comments::create(['comment' => $comment, 'post_id' => $post_id, 'user_id' => $user_id]);
return redirect(route('getPostShow', $post_id));
}