За последние 24 часа нас посетили 17892 программиста и 1574 робота. Сейчас ищет 1201 программист ...

Не определяется класс $commentObj = Comment::find(1)->user();

Тема в разделе "Laravel", создана пользователем Сереганек, 12 сен 2017.

  1. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Почему везде на офф сайде приведены примеры такого типа:
    PHP:
    1. $commentObj = Comment::find(1)->user();
    Но я получаю ошибку, что класс Comment не определен. Пытаюсь реализовать связь между таблицами один-к-одному и вытащить из них данные.

    GuestController
    PHP:
    1. <?php
    2.  
    3. namespace App\Http\Controllers;
    4.  
    5. use App\Http\Controllers;
    6. use App\Http\Controllers\Controller;
    7. use App\Http\Requests;
    8. use Illuminate\Http\Request;
    9. use App\Comment;
    10. use App\User;
    11. use App\Http\Requests\AddMessage;
    12. use Illuminate\Validation\Factory;
    13.  
    14. class GuestController extends Controller
    15. {
    16.     public function indexGet(Request $request){
    17.  
    18.         $commentObj = Comment::find(1)->user();
    19.  
    20.         return ...
    21.     }
    22. ...
    Comment (модель)
    PHP:
    1. <?php
    2.  
    3. namespace App;
    4.  
    5. use Illuminate\Database\Eloquent\Model;
    6.  
    7. class Comment extends Model
    8. {
    9.     //
    10.     public function user(){
    11.         return $this->hasOne('App\User');
    12.     }
    13. }
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.793
    Симпатии:
    1.330
    Адрес:
    Лень
    включи отображение ошибок, и проверяй куда делся твой класс , загружался ли автологином ?
     
    Сереганек нравится это.
  3. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.583
    Симпатии:
    1.761
    А ты правильно положил свой Comment? Автозагрузчик его может найти?
     
    Сереганек нравится это.
  4. Сереганек

    Сереганек Активный пользователь

    С нами с:
    18 янв 2017
    Сообщения:
    333
    Симпатии:
    27
    Причина была в копипасте. Скопировался какой-то невидимый символ перед Comment, который в коде выглядел как пробел.
     
  5. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.793
    Симпатии:
    1.330
    Адрес:
    Лень
    даже методы public function ....() прописываю ручками как хукеры в видюхах выеживаясь своей быстротой в написании