“找不到类'App \ Models \ Post'”

时间:2018-08-12 14:43:32

标签: laravel posts

我正试图让我的用户在我的社交媒体网站上发布帖子。我已经有一个“ App \ Models \ Post”。我该如何解决?

当我尝试提交帖子时,也会出现错误,并且麻烦所在的行是:“ $ post = new Post();”

好吧,所以这里说的似乎是我的帖子大部分是代码,所以我不会写任何有意义的东西,所以这个小小的事情就没了。我不是英语母语人士,所以如果您发现拼写或语法错误,请纠正我:)

这是我的控制器的代码:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Post ;
use App\User;

class PostController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
      return view('makePost');
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */



    /**
     * Store a newly created resource in storage.
     *
 * @param  \Illuminate\Http\Request  $request
 * @return \Illuminate\Http\Response
 */
public function makePost(Request $request)
{
  $this->validate($request, array(
    'post' => 'required',
    'title' => 'nullable|max:50',
    'label' => 'nullable|max:25',
  ));

  $post = new Post();

  $post->post = $request->post;
  $post->title = $request->title;
  $post->label = $request->label;
  $post->save();

  return redirect()->route('index');
}

/**
 * Display the specified resource.
 *
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */
public function show($id)
{
    //
}

/**
 * Show the form for editing the specified resource.
 *
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */
public function edit($id)
{
    //
}

/**
 * Update the specified resource in storage.
 *
 * @param  \Illuminate\Http\Request  $request
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */

public function update(Request $request, $id)
{
    //
}

/**
 * Remove the specified resource from storage.
 *
 * @param  int  $id
 * @return \Illuminate\Http\Response
 */
public function destroy($id)
{
    //
}

这是我的帖子模型:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    public function Users() {
      return $this->belongsTo(User::class);
    }
}

2 个答案:

答案 0 :(得分:2)

如果在Model目录中将其命名空间更改为以下名称,则您在Model中定义的命名空间错误:

(defun colorify ()
  (interactive)
  (goto-char 1)
  (setq moreLines t)
  (while moreLines
    (end-of-line)
    (insert "a")
    (backward-delete-char 1)
    (setq moreLines (= 0 (forward-line 1)))))

如果没有,您可以随时将控制器更改为:

namespace App\Models;

答案 1 :(得分:1)

尝试使用: 使用App \ Post; 代替使用App \ Models \ Post;