Siemka, pytanie skierowane głównie do osób piszących coś w laravel. Gdy korzystam z CustomRequest.php jako walidatora, to mogę dodać coś więcej niż prostą arrayke w rules?

public function rules(): array
{
return [
'user_id' => 'required|numeric',
'parent_id' => 'required|numeric',
'description' => 'required|string|max:255',
];
}


Chciałbym zrobić tutaj warunek który sprawdza czy dany uzytkownik już skomentował post, jeśli tak to następnego komentarza nie będzie mógł dodać.
https://laravel.com/docs/9.x/validation -- w dokumentacji jest tylko ten
@aso824: Osobiście to nie pchałbym logiki biznesowej do form requestów jako custom rules. Czemu? W przypadku, gdy chcielibyśmy zrobić podobną funkcjonalność, tylko jako command, to musimy walidować jeszcze raz. Więc najlepiej to chyba walidować gdzieś w serwisie i wstrzykiwać go do kontrolera lub commanda. Ewentualnie korzystać z samych policies, np. właśnie gdzieś w serwisie.
@aso824: kodami błędów na takim etapie by się nie przejmował, bo jak będzie potrzebne to w Handlarze wyłapie wyjątek i da poprawny, ale wrzucenie tego w policy pozwoli mu to wykorzystać w wielu miejscach np: serwis, kontroler, widok (@can w blade), routing (zabezpieczenie za pomocą can:coś tam)
Po wielu przemyśleniach co się uczyć wybrałem #symfony zamiast #laravel (więcej ofert pracy i większa liczba projektów oraz długość na rynku). Czy zacząć naukę od wersji 6 czy najpierw 5? Jaką literaturę/kursy polecacie? Aktualnie pracuję jeszcze w Kohanie no ale czas się przerzucić na coś rozwijanego i popularnego :)
#php #laravel #pracait
Hej mirki, rozglądam się za dodatkowym zajęciem. Ogarniam laravel, mysql, docker, redis, rabbit, trochę frontend (najlepiej na jakimś bootstrapie albo czymś podobnym).
Jeśli potrzebujecie kogoś do pomocy, przy zleceniach lub w firmie w której pracujecie przyda się pomoc na kilkadziesiąt godzin, zapraszam.

Nie zamykam się na framework laravel, chętnie nauczę się czegoś nowego.
Stworzyłem kilka prostych SaaS-ów, czy CRM-ów, ale to nie potrzebowało więcej niż jednej bazy danych.
No i teraz mam dylemat, bo dla każdego klienta ma być osobna baza danych i jedna główna trzymająca dane wszystkich klientów, która posłuży do zarządzania tym wszystkim. No fajnie tylko, że za pomocą jednego logowania każdy może mieć dostęp do kilku baz danych np. pracownik pracuje w dwóch firmach i ma mieć dostęp do jednej i do
via Wykop Mobilny (Android)
  • 3
@nophp: W projekcie korzystamy z multi-tenanta jest jeden backend, z którego korzystają wszyscy klienci, jest jeden frontem. Tylko każdy klient ma osobną domenę, z której się łączy i na tej podstawie pobierane są dane z odpowiedniej bazy danych. User jest per baza/domena
@Anesa: jak potrzebujesz wrzucić jakieś dane w migracji to polecam po prostu dodać odpowiednie zapytania do migracji. Seedery zostały stworzone raczej do generowania danych do testów
Hey Mircy i Mirabelcy. Może wy podpowiecie jak się uporać z problemem.

dyld: Library not loaded: /usr/local/opt/tidy-html5/lib/libtidy.5.dylib
Referenced from: /usr/local/Cellar/php/8.0.7/bin/php
Reason: image not found

Już zdążyłem odinstalować stare wersje php, już próbowałem reinstalować tidu-html5 i nic. Updatowałem co się dało brew, composer, najnowsza wersja php. Nic nie mogę znaleźć na ten temat. Może któryś z was się z czymś takim już zmierzył i wie o co chodzi? Z góry dzięki za pomoc.
@KKK1337 już rozwiązałem problem, posypały się wersję bibliotek po uruchomieniu brew upgrade, standard :) Tyle że w tym wypadku reinstalacja nie pomogła i koniec końców ręcznie w terminalu zmieniałem nazwy z 7 na 8 :)
Mirki potrzebuję pomocy w #webdev czy jest jakiś sposób kiedy mam dwa foldery obok siebie jeden to:

/laravel/

drugi:

/blog/

I wszystkie routy w tym główny będą obsługiwane przez #laravel oprócz tych z /blog/ na początku tzn.

domena.pl/ < laravel
domena.pl/test < laravel

domena.pl/blog/ < wordpress
domena.pl/blog/test/ < #wordpress

Dodam że mam dostęp do ustawiania .htaccess, jak te foldery poprzenosić ew. jak zmienić .htaccess żeby to współgrało tak jak chcę? Subdomena na
@Bad_Wolf: no ja tam OPa zrozumiałem bez problemu więc chyba tylko Ty masz problem

@ryczek02: da się to zrobić na 100% ale nie powiem Ci jak bo nie jestem biegły w htaccessie. Otwórz i wklej ten htaccess który masz obecnie. Tam pewnie jest RewriteCond który trzeba dodać/modyfikować żeby przepisywał wszystkie route'y do laravela oprócz folderu blog
Jest strona napisana w PHP / Laravel - nazwijmy to core-app. Wszystkie moduły strony są zrobione jako pakiety i instalowane są przez composer. Teraz jak rozwiązać upgrade samego core-app? Core-app zawiera główny composer.json dla strony, pliki statyczne, strukturę katalogów + pare class. Wszystkie moduły automatycznie się uaktualniają przez composer upgrade ale jak coś zmieniam w core-app to muszę to ręcznie / ftp na serwer wgrywać.

#programowanie #php #laravel
@KKK1337: bo to fajny język webowy, z dużym supportem bibliotek i idealny na mikroserwisy, bardzo mobilny, łatwo devów znaleźć.

Jakbym miał robić duży projekt to PHP - a jak mikroserwisy - NodeJS.

I nodeJS jest supportowany wszędzie - czy to AWS Lambda, czy Google functions czy jakikolwiek inny framework + praktycznie wszystkie SDK supportują NodeJS.

Dzięki NodeJS (i w sumie TypeScript) mamy jeden język w frondzie, backendzie, więc nie ma problemu
Siemka, ktoś wie czy mogę uzyskać taki routing w laravelu?
Mam taki np:
Route::get('posts/{post}/comments/{comment}', function ($postId, $commentId) {
//
});

Chce taki:
Route::get('?posts={post}&comments={comment}', function ($postId, $commentId) {
//
});

Ale gdy próbuję opcje poniżej to dostaje 404. A Chodzi mi o to by zachować taki format wpisywania jak ponizej

#laravel #programowanie #naukaprogramowania #php
@aso824: Rozumiem. No bo właśnie przy stworzeniu formularza z inputami i metoda GET udało mi się własnie uzyskac coś takieog jak chce. Ale gdy ma to być wpisywane z przeglądarki to własnie dopisuje za każdym razem. Myślałem że to błachostka, a jednak :D
Szukam pracy w formie pomocy przy stronach internetowych jako #backend w #laravel. Mam 19 lat, na praktyce zawodowej pracowałem przy dwóch komercyjnych projektach ponieważ szefostwo zauważyło we mnie potencjał i mnie przydzielili do nich. Ciężko mi złapać jakiekolwiek zlecenie, choć kilka mam za sobą - głównie strony serwerów gier z obsługą płatności i wykonywaniem komend dla tych serwerów po Websocketach.

Ostatnia strona jaką wykonywałem obsługuje płatności z NummusPay (ich API oraz
@ryczek02: Jakbym szukał kogoś do pracy to po przeczytaniu tego wpisu z dużym prawdopodobieństwem bym się tobą zainteresował. Konkretnie, na temat, bez lania wody wypisałeś co umiesz i wiesz. I widać, że przynajmniej rozumiesz o co chodzi w tych technologiach które wymieniłeś. Dodatkowy plus za poprawną polszczyznę.
Potrzebuje sprawdzić czy dwie daty się nakładają, mam zamówienie które się rozpocznie od do i teraz potrzebuje wyciągnąć wszystkie produktu które nie mają żadnych zamówień w określonym przedziale czasowym np

produkt ma zamówienie: start 06-07-2021 kończy się 10-07-2021

i teraz jak użytkownik wybierze datę, start 01-07-2021 koniec 09-07-2021 lub start 01-07-2021 koniec 20-07-2021 to mi ten produkt pominie

#laravel #php
@bmLq: laravel w przypadku dat utworzenia (createdat) i edycji (updatedat) ma juz wbudowane całe zaplecze do ich automatycznej obsługi (od migracji po automaryczne uzupełnianie tch danych w modelu). Dodatkowo dochodzą tez soft delete (deleted_at). Plus w larwie najlepiej korzystać z buildera, to pozwala w bardzo łatwy sposób przejść pomiędzy różnymi bazami danych bez przepisywania kodu.