質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

解決済

Class 'App\Model\Post' not found

m1010
m1010

総合スコア16

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

2回答

0評価

0クリップ

388閲覧

投稿2021/12/03 21:31

編集2021/12/06 12:28

selectボックスに表示されるcategoryを表示させたいのですが、表示されません。
(セレクトボックスのボタンを押すと、神社・寺が表示されます。)
PostControllerに下記の通り、use App\Post,use App\Model\Postと書き加えているのですが、上記のエラーが解消されません。アドバイスをいただきたいです。
laravelのlogにはlocal.ERROR: Class 'App\Model\Post' not found {"exception":"[object] (Symfony\Component\Debug\Exception\FatalThrowableError(code: 0): Class 'App\Model\Post' not found at /Users/maru/develop/naratabi/src/app/Http/Controllers/PostController.php:104)
と表記されています。

larevel

PostController.php 22 use App\Model\Post;   96      public function index(Request $request)   97      {   98 $category = Category::all();   99 return response()->json(['categories'=>$category],200); 101  } 102    public function find(Request $request,$id) 103    { 104 $posts= Post::where('category_id',$request->id)->get(); 105 106 return response()->json(['posts'=>$posts],200); 107         }

laravel

Post.php <?php namespace App\Http\Controllers; use Illuminate\Database\Eloquent\Model; class Post extends Model { public function posts() { return $this->hasMany('App\Models\Post'); } }

nuxt

index.vue <template> <div class="container"> <div class="title"> <p>鹿と大仏だけじゃない奈良を知る</p> </div> <div class="slider_outer"> <transition name="fade"> <div class="slider-inner" :key="idx" v-for="(image, idx) in images" v-if="current_slide == idx"> <img class="slider-inner" v-bind:src="images[idx].img" :key="images[idx].img" width="450" height="300"> </div> </transition> </div> <div class="category_search_form"> <div class="select_title"> <p>下記ボタンをクリックして検索しよう</p> <select v-model="category_id" v-on:change="jump(category_id)" class="select"> <option value="">category</option> <option v-for="category in categories" :value= "category.id" > {{category.id}} {{ category.name}} </option> </select> </div> </div> <div class="image_post"> <div class="photoshow"> <NuxtLink to="/show"> <div class="post"> 写真一覧をみる </div> </NuxtLink> <NuxtLink to="/form"> <div class="photoshowtitle"><a>奈良の写真を投稿する!</a></div> </NuxtLink> </div> </div> </div> </template> <script> import axios from 'axios'; export default{ data(){ return{ category_id:'', category_name:'', categories:[], category:[], post:[], id:'', name:'', current_slide:0, images:'', images:[ {img:'https://naratabi.s3.ap-northeast-1.amazonaws.com/images/shika.JPG'}, {img:'https://naratabi.s3.ap-northeast-1.amazonaws.com/images/oomiwa.JPG'}, {img:'https://naratabi.s3.ap-northeast-1.amazonaws.com/images/BqWJ6Maew497TkYq1oBBkuibneoMO0ERGZWKXJtu.jpeg'}, ], } }, created(){ //axios.get(`http://127.0.0.1:8000/api/posts`) //.then(response => { // this.categories = response.data.categories //console.log(response.data) //}); this.getCategories() }, mounted() {   setInterval(() => { this.current_slide = this.current_slide < this.images.length -1 ? this.current_slide +1 : 0 }, 6000), console.info('this.$axios.defaults.baseURL:', this.$axios.defaults.baseURL) }, methods:{ getCategories: function(){ this.$axios.$get(`/category`) .then(response => { console.log(response) this.categories = response.catagories console.log(response.data) }); }, jump:function(id){ this.$router.push({ path: `category/${id}`}); console.log(id) }, slideshow(images) { const current = images[this.index]; const prev = images[this.index - 1] ? images[this.index - 1] : images[images.length - 1]; current.classList.add('fadein'); current.classList.remove('fadeout'); prev.classList.remove('fadein'); prev.classList.add('fadeout'); } }, } </script>

laravel

api.php Route::get('/category','PostController@index'); Route::get('/category/{id}','PostController@find');

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

skys215

2021/12/04 01:50

Post.phpはapp/Post.phpにあるのか、app/Models/Post.phpにあるのですか?
m1010

2021/12/04 23:45

返信ありがとうございます。 app/Post.phpにあります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。