Ответы пользователя по тегу Laravel
  • Ко многим через в laravel eloquent - как сделать хитрый запрос?

    @kami16ru
    on `client_course`.`id` = `clients`.`client_course_id`

    У тебя тут ошибка явно.

    public function clients()
    {
    return $this->hasManyThrough('App\Client', 'App\ClientCourse');
    }

    У тебя связь же много ко многим, просто hasMany(Client::class)
    Ответ написан
    Комментировать
  • Laragon/Nginx + Laravel + Nuxt: 419 - CSRF token mismatch?

    @kami16ru
    У вас запрос на csrf куку возвращает ок.
    1. Удалите куки из браузера
    2. В ларавеле выполните команды:
    • php artisan config:clear
    • php artisan cache:clear
    • php artisan config:cache

    Если вы вносили изменения в кеш, они не всегда могут закешироваться из за проблем с правами (сам так и не понял почему, грешу на IDE, который пишет в файлах под рутом). Лучше всегда чистить кэш, после того как вносили изменения в папке config.

    Если при выполнении этих операций у вас ошибка с правами, не в коем случае не решайте ее выдачей прав 777 на данную папку. Просто удалите вручную кеш файл, у которого права root root. Проверить права в текущей директории можно командой ls -la

    3. axios: {
    baseURL: process.env.API_DOMAIN,
    credentials: true
    },

    По моему тут нужно withCredentials: true

    4. async login() {
    try {
    await this.$axios.$get('localhost:8000/sanctum/csrf-cookie');
    await this.$auth.loginWith('local', {
    email: this.form.email,
    password: this.form.password,
    });
    this.$router.replace('/');
    }
    catch (e) {
    this.errors = 'Could not sign you with these credentials.';
    console.log(e);
    }
    }

    Я бы засунул второй запрос в .then

    await this.$axios.$get('localhost:8000/sanctum/csrf-cookie')
    .then(() => {
    this.$axios.$post('yourPostRoute', yourPostData)
    });
    Ответ написан
  • Избитый вопрос: как быть с роутингом в связке Laravel+Vue+SSR?

    @kami16ru
    В недавно вышедшем Laravel 8 есть SSR из коробки, реализованный при помощи inertia.js, которая решает кроме роутинга и другие проблемы, связанные с SSR.

    Так же как вариант, вы можете написать artisan команду, которая будет при сборке проекта создавать json файл. На фронтенде пишете маппер json файла и можете синхронизировать руты с методом "name" маршрутизатора Laravel. Примеры в гугле есть.
    Ответ написан