
darkwoolf
21.10.2018
16:23:17
Такой вопрос. У меня есть index екшн и я беру там все записи и просто вывожу, а если мне нужно их как-то обратотать?то есть такой пример. Я беру всех Пользователей и мне нужно для каждого из них вывести число написаных ними и в тоже время активных постов.
С одним автором всё понятно
вот так с одним юзером выходит

Google

Евгений
21.10.2018
16:24:58
User::withCount('activePosts')->get()

darkwoolf
21.10.2018
16:25:49
у меня пока вот так

Евгений
21.10.2018
16:25:53
потом у каждого юзера будет $user->activePosts_count (или active_posts_count , тут чот не уверен)

darkwoolf
21.10.2018
16:26:20
примерно понял

Евгений
21.10.2018
16:26:21
молодец

darkwoolf
21.10.2018
16:27:02
молодец
Если я не буду указазывать метод all оно и так всх возьмёт?

Евгений
21.10.2018
16:27:28
get() по умолчанию всех берет (всех тех кто дошел до get())
ваще all() по идее нахрен не нужен
хотя я чот не уверен какие запросы в базу генерятся, но я юзаю get() всегда

Nikita
21.10.2018
16:31:11
просто all() это метод модели, а get() билдера
вроде так)

Google

darkwoolf
21.10.2018
16:32:00
Stop

Евгений
21.10.2018
16:32:44
чо это нельзя, очень даже можно, всегда так делаю

darkwoolf
21.10.2018
16:38:03
Не, нифига не понятно
Крч, если про мой случай, то есть юзер и связь с коментами
И у коментов есть статус позитивный и негативный и я хочу выводить количество позитивных и негативных

Евгений
21.10.2018
16:38:52
ты в пхп не умеешь просто
ты переменную в цикл впихнул, и проходя цикл ты каждый раз её перезаписываешь

Nikita
21.10.2018
16:39:16

Евгений
21.10.2018
16:39:35
в итоге у тебя в переменных будет то что было в последний обход цикла
$player = Player::withCount('plusesComments')->withCount('minusesComments')->get();
и в модели Player создать дополнительно 2 связи, plusesComments и minusesComments где ты получаешь только выбранные комменты

Лиза
21.10.2018
16:46:25
а с моей проблемой никто не поможет? :)

darkwoolf
21.10.2018
16:52:31

Евгений
21.10.2018
16:56:00
я могу еще 100500 раз повторить, что можно сделать через withCount, но судя по всему это не поможет тебе

darkwoolf
21.10.2018
17:02:26

Евгений
21.10.2018
17:02:34
а тебе что надо?
ты ж сам сказал что тебе надо количество

darkwoolf
21.10.2018
17:02:48
Тут список юзеров
И нужно количество коментов для каждого

Google

Евгений
21.10.2018
17:03:19

darkwoolf
21.10.2018
17:03:31
НУ так
да

Евгений
21.10.2018
17:03:40
ну та withCount !!!

darkwoolf
21.10.2018
17:03:41
число коментов
Щас напишу и скину
сек

Rauf
21.10.2018
17:04:26
Ребята помогите почему Laravel не видет изображения.Ошибка вида 404 (Not Found) в консоли.Код такой <td><img src="{{ $post->feautured }}" width="50px" height="50px"></td> но если написать так то он покажет правильный путь к картинке <td>{{ $post->feautured }}</td>
причом картинка нужная там лежит

darkwoolf
21.10.2018
17:05:29
Проверь правильно ли
Где она лежит и что выводит{{ $post->feautured }}?

Rauf
21.10.2018
17:07:49
да ты правь @darkwoolfik вот папку public он не видит ну вот только исправил ничего
опять не показывает картинку
http://127.0.0.1:8000/public/upload/posts1540136039join-club.png

Евгений
21.10.2018
17:08:26
вообще public не должно быть в пути

darkwoolf
21.10.2018
17:08:34
да

Евгений
21.10.2018
17:08:38
если всё правильно настроено

darkwoolf
21.10.2018
17:08:47
должно быть http://127.0.0.1:8000/public/upload/posts1540136039join-club.png

Евгений
21.10.2018
17:09:07
http://127.0.0.1:8000/upload/posts1540136039join-club.png

Google

darkwoolf
21.10.2018
17:09:19
А у тебя это должно лежать /var/www/Your_project/public/upload/posts1540136039join-club.png

Евгений
21.10.2018
17:09:44
документ рут на папку public надо настроить

Rauf
21.10.2018
17:09:53
вот код поста только что добавил внутри метода asset вот эту часть "public/"
public function getFeauturedAttribute ($feautured){
return asset("public/".$feautured);
}

Евгений
21.10.2018
17:10:11
не нужно public
это неправильно

Rauf
21.10.2018
17:10:29
ну также сказал @darkwoolfik

Евгений
21.10.2018
17:10:58
?♂️

Rauf
21.10.2018
17:11:08
тогда почему не показывает ?

darkwoolf
21.10.2018
17:11:15

Евгений
21.10.2018
17:11:17
а с public показывает?

Rauf
21.10.2018
17:11:39
нет ???

Евгений
21.10.2018
17:11:47
?
так может ты дашь больше инфы? что выводит {{ $post->feautured }} ?

Rauf
21.10.2018
17:13:00
написал наверху {{ $post->feautured }} выводит правильную ссылку на картинку

Евгений
21.10.2018
17:13:10
правильную, это какую?
скинь

Rauf
21.10.2018
17:13:16
без public

Евгений
21.10.2018
17:13:28
а физически если перейти в папку там файл лежит?

darkwoolf
21.10.2018
17:13:57

Google

Евгений
21.10.2018
17:14:25
у тебя есть связь у Player comments() ? правильно?

Rauf
21.10.2018
17:14:33
картинка лежит внутри public->uploads->posts->картинка физически он там

Евгений
21.10.2018
17:14:39
скинь как у тебя связь эта прописана
у тебя после posts нет слеша в пути картинки

darkwoolf
21.10.2018
17:15:36

Rauf
21.10.2018
17:15:59
вот пожалуйста
$post = Post::create([
"title" => $request->title,
"content" => $request->content,
"feautured" => "upload/posts" . $featured_new_name,
"category_id" => $request->category_id,
'slug' => str_slug($request->title) //Create new laravel project ===> create-new-laravel-project
]);

darkwoolf
21.10.2018
17:16:59
А перед upload не должно быть слеша?
А не
не должно

Rauf
21.10.2018
17:17:28
в принципе нет

Евгений
21.10.2018
17:17:34
public function commentsPluses()
{
return $this->comments()->where('characteristic', 1);
}
public function commentsMinuses()
{
return $this->comments()->where('characteristic', 0);
}
Будет 2 доп связи, которые выводят только плюсованые и только минусованные
я тебе могу сказать способ проще для тебя, но менее правильный

darkwoolf
21.10.2018
17:18:19
в принципе нет
НУ будет тогда google.com."upload/posts" . $featured_new_name

Rauf
21.10.2018
17:19:49
@perin правильно ))