Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Laravel 5.x » Помогите составить запрос laravel » 19.03.2019 07:56:10

An543
Ответов: 1

Приветствую, как сделать такой запрос в Laravel контроллере?

SELECT `i`.`name` AS `ingredient`, `ri`.`amount`, `u`.`name` AS `units`, 
       `ri`.`amount` * `g`.`weight` AS `grams`
  FROM `recipe_ingredients` AS `ri`
  JOIN `ingredients` AS `i` ON `i`.`id` = `ri`.`ingredient_id`
  JOIN `units` AS `u` ON `u`.`id` = `ri`.`units_id`
  LEFT JOIN `gram_per_unit` AS `g`
    ON `g`.`ingredient_id` = `i`.`ingredient_id` 
      AND `g`.`units_id` = `i`.`units_id`
  WHERE `ri`.`recipe_id` = :recipeId

#2 Laravel 5.x » Как сделать фильтр по значению в связанной таблице » 14.03.2019 15:19:07

An543
Ответов: 2

Приветствую, есть 3 таблицы
Recipe- id | name ;IngrGroup - id | recipe_id | name ; ing_recipe -id | group_id | name
Все связаны через hasMany. Как получить все значения Recipe при значении ing_recipe id 1

#3 Re: Laravel 5.x » Хранение картинок » 11.03.2019 13:10:41

Ну если в БД хранить путь к картинке, то такой способ не прокатит, поэтому либо хранить без расширения, либо только имя файла

#4 Re: Laravel 5.x » Хранение картинок » 11.03.2019 12:48:23

В базе только одно изображение img.jpg, а миниатюру я хочу вывести добавлением префикса к имени файла из БД

#5 Re: Laravel 5.x » Хранение картинок » 11.03.2019 12:27:37

Я Вас не понимаю, img.jpg я вывожу из базы $artlclres->img.jpg , а как вывести img_min.jpg, как префикс добавить до расширения ?

#6 Re: Laravel 5.x » Хранение картинок » 11.03.2019 11:05:30

Ну допустим в базе у нас лежит оригинал Img.jpg , миниатюру мы ресайзили и записали в ту же папку с оригиналом и назвали Img_min.jpg- как вывести ?

#8 Re: Laravel 5.x » Хранение картинок » 11.03.2019 09:01:19

А если ресайзить миниатюру, как ее выводить во вью, если учесть, что в базе путь хранится ?

#9 Laravel 5.x » Хранение картинок » 11.03.2019 08:07:46

An543
Ответов: 13

Подскажите, как лучше хранить картинки разных размеров ? есть миниатюра и большая картинка? обе ресайзить при загрузке картинки, потом вытаскивать подставлять префикс, сохранять в БД img_min img_max или еще варианты.Прсоветите пожалуйста, всю голову сломал как сделать лучше .

#10 Re: Laravel 5.x » Как лучше записать аватар после обрезки ? » 01.03.2019 05:50:54

Лучше старый удалять, а новый добавлять. Иначе у тебя куча ненужного мусора будет висеть

есть 2е кнопки , одна ресайзит и сохраняет , вторая записывает в БД. Поэтому я и выбрал путь сохранить в Upload после ресайза, а после сохранить переместить в папку users и перезаписать в папке и в БД.

#11 Re: Laravel 5.x » Как лучше записать аватар после обрезки ? » 28.02.2019 09:19:00

В БД должно храниться только имя файла. Путь к нему пиши в обработчике

Присваивать все время уникальное имя ?  через time()

#12 Re: Laravel 5.x » Как лучше записать аватар после обрезки ? » 28.02.2019 05:26:20

В контроллере, который обрабатывает сохранение файла, напиши путь, который тебе нужен

Вот например, юзер редактирует аватар и путь в БД к нему есть, загружает новый, обрезал, но не сохраняет,а он уже сохранен в папке где путь в БД.

#13 Re: Laravel 5.x » Как лучше записать аватар после обрезки ? » 27.02.2019 14:17:01

Ну да

Получается и путь к аватару в  update брать не из контроллера, который сохранял файл, а так же

$path = public_path() . "/upload/" . $image_name;

#14 Re: Laravel 5.x » Как лучше записать аватар после обрезки ? » 27.02.2019 13:58:05

А если здесь сразу написать путь для сохранения файла

т.е. миновать папку upload, а при нажатии кнопки сохранить записать в БД и закрыть форму ?

#15 Laravel 5.x » Как лучше записать аватар после обрезки ? » 27.02.2019 13:30:51

An543
Ответов: 10

Всем привет, использую в проекте на Laravel- croppie для обрезки фото аватара, после форматирования аватар сохраняется в папке upload, после нажатия кнопки сохранить планирую переместить аватарку в папку img/users/ava_id.png и записать путь в бд., Но не могу никак передать путь к файлу в форму из контроллера. Посоветуйте, как проще сделать загрузку авы ?
imageController:

public function imageCropPost(Request $request)
    {
        $data = $request->image;
        list($type, $data) = explode(';', $data);
        list(, $data)      = explode(',', $data);
        $data = base64_decode($data);
        $image_name= time().'.png';
        $path = public_path() . "/upload/" . $image_name;
        file_put_contents($path, $data);
        return response()->json(['success'=>'done']);
    }

#16 Re: Laravel 5.x » Подключение sidebar на страницах » 13.02.2019 10:47:02

@auth // проверяешь, зарегистрирован ли пользователь    выводишь блок с автаркой@endauth

сайдбар подключен в app, в личном кабинете включен app, если это

@auth // проверяешь, зарегистрирован ли пользователь
    выводишь блок с автаркой
@endauth

вставлять в сайдбаре, то выйдет на всех страницах у auth  юзеров, а нужно на одной странице.

#17 Re: Laravel 5.x » Подключение sidebar на страницах » 13.02.2019 09:32:36

@auth // проверяешь, зарегистрирован ли пользователь

    выводишь сайдбар

@endauth

Мне нужно, чтоб сайдбар выходил на всех страницах у гостей тоже, а блок с аватаркой вверху сайдбара, только на странице личный кабинет.

#18 Laravel 5.x » Подключение sidebar на страницах » 13.02.2019 08:20:21

An543
Ответов: 4

Всем привет, у меня левый сайдбар присутствует на всех страницах, поэтому я подключил его в app.blade
но на странице пользователя, мне нужно добавить в сайдбар блок сверху, поясните как это сделать ?
или подключать сайдбар на каждой странице ?

<!-- app.blade -->

@include('layouts.header')
@include('layouts.left_sidebar')
      
  @section('content')
  @Show
               
@include('layouts.right_sidebar')
@include('layouts.footer')

#19 Re: Laravel 5.x » Меню категорий с дочерними категориями помогите! » 09.02.2019 06:34:04

В базе иерархия категорий верно организована? В итоге у subcategories какой код генерируется?

Поясните, у меня категории через отношение многие ко многим.

#20 Re: Laravel 5.x » Меню категорий с дочерними категориями помогите! » 08.02.2019 21:03:46

Это нужно в CSS изменять

Каким образом? Нужно сначала вывод главных и вложенных отдельно сделать, вот в этом вопрос.

#21 Laravel 5.x » Меню категорий с дочерними категориями помогите! » 08.02.2019 20:16:31

An543
Ответов: 5

Всем доброго дня! Никак не получается вывести меню по схеме
Категория
вложенная1 Вложенная2 вложенная 3
Вложенная 4 Вложенная 5

Категория 1
вложенная1 Вложенная2 вложенная 3
Вложенная 4 Вложенная 5
Использую такой код

@foreach ($categories as $category)
<p class="py-0 pt-2 my-0"><b><a href=""> {{$category->name}}</a></b></p>
@include('layouts.menu_categories', ['categories' => $category->children])
@endforeach

Подскажите, как сделать вложенные категории в строку.

#22 Laravel 5.x » Авторизация через модальное окно. » 05.02.2019 22:42:05

An543
Ответов: 1

Всем добра!
На проекте стоит стандартная форма авторизации, сверстали авторизацию на модальных окнах без форм, есть какие нибудь примеры как сделать при роуте /register выходило модальное окно регистрации.

#23 Re: Laravel 5.x » Реализовать черновики в блоге laravel » 05.02.2019 15:31:44

Сохраняешь сстатью со статусом 0. В личном кабинете пользователя выводишь все написанные им статьи. У черновика будет статус 0. После того, как он ее отредактировал, можно изменить статус на 1.

Отличное решение, использовать 0 статус я не подумал.

#24 Re: Laravel 5.x » Реализовать черновики в блоге laravel » 05.02.2019 08:25:02

Самый простой вариант - изменение статуса. В таблице с постами делаешь поле status, по умолчанию равным 0. А в админке кнопку - Опубликовать, при клике на которую значение status изменяется на 1. Соответственно, выводишь на фронтенде только те посты, у которых статус = 1.

Это больше похоже на модерацию, а речь идет о черновиках пользователя в личном кабинете.Т.е. сохранить в черновик, потом править, потом отправить на модерацию.
UPD:Если в таблицу posts добавить boolean('active') и если "в черновик" то acvive =0 и в списке постов на модерацию не выводить, так имеет место жить ?

#25 Laravel 5.x » Реализовать черновики в блоге laravel » 05.02.2019 06:42:21

An543
Ответов: 4

Доброго всем дня!
Есть блог на laravel, задача сделать добавление постов пользователями с возможностью сохранять в черновиках.Подскажите как правильно сделать, создать отдельную таблицу для черновиков или обойтись статусом (черновик, на модерации, опубликован).
Возможно где-то есть похожее решение ?

Подвал раздела