Mam dwa modele: artykuł i komentarz, oba mają przypisanego użytkownika, chciałbym wyświetlać wszystkie akcje użytkownika na jego stronie profilowej. Muszę do tego zrobić model z relacją polimorficzną, czy jakoś inaczej da się to rozwiązać?

#laravel #webdev
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kot1401: Testowalne jedynie funkcjonalnie – tzn, żeby móc przetestować swój kod musisz mieć pewność, że klasa

App
działa poprawnie.

Do testowania
  • Odpowiedz
Is it possible to make Laravel's validation rule like this pseudo-code below?

field1 in modelA must be lower than sum of field2, field3 and field4 from modelB
Nie mam pomysłu jak to zrobić. Pomoże ktoś?

#php #laravel
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kot1401: Masz dwa wyjścia:

1. Przekazać wartości pól z obu modeli w jednej tablicy (wtedy reguła ograniczy się do prostego porównania bo będziesz mieć wszystkie dane w parametrze).

Lub:

2. Stworzyć regułę na wzór exists, w której podasz identyfikator rekordu modelu B, z którego powinny zostać pobrane wartości pól. Pobieranie danych robisz wewnątrz reguły, przed porównaniem.
  • Odpowiedz
Miałbym do Was kilka pytań o architekturę bardziej zaawansowanej aplikacji w Laravel.

Obecnie mój projekt obfituje dziesiątki antywzorców, takich jak trzymanie logiki i walidacji danych w kontrolerze, brak obiektowości itd. itp.

Chciałbym to wszystko jak najszybciej zrefaktoryzować do wzorca "Repository Pattern".

Co
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kot1401: Zamiast pytać jak pisać klasy – zacznij pisać testy (jednostkowe).

Dlaczego? Bo wiele rzeczy TDD wymusza, które są pozytywne z architektonicznego punktu widzenia.
  • Odpowiedz
Dlaczego w Laravelu nie da się policzyć spokrewnionych obiektów w modelu?

public function jakies_obiekty()_
_
{_
_
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki, pomóżcie. Zacząłem przygodę z Laravelem 4. Tworzę sobie bazę danych za pomocą Schema Builder. Zrobiłem co chciałem i mam ją zmigrować. Tu pojawia się problem, otóż wpisując php artisan migrate odmawia mi dostępu do bazy. Dlaczego? Dodam, że robię to na localhost, a env artisan ustawiony jest na production. Jak zmienić, co zrobić? Jak żyć?

#laravel
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Pomocy! Potrzebuję podpiąć Auth laravela do istniejącej bazy danych (inne hashe, inne pola z hasłami, itd.).

Reszta bez zmian - muszę znaleźć sposób na wprowadzenie własnego validateCredentials(), które waliduje dane, czyli prawdopodobnie muszę napisać swój własny Auth Driver (implementującą UserProviderInterface)

Sprawa nie wygląda na trudną, ale póki co spędza mi sen z powiek - ciągle coś nie śmiga. Czy znacie może jakiś tutorial, albo gotową bibliotekę, gdzie będę mógł podejrzeć jak to jest zrealizowane
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Dług technologiczny wybranych projektów w #php - jak widać z #laravel wcale nie jest tak źle jak to hejterzy opisują ;), za to taka #joomla czy #wordpress to biją rekordy ;)

--

Podejrzewam, że zaraz padnie pytanie "jak to jest liczone" -> każde naruszenie jakości kodu ma przypisywaną jakąś estymacje czasową, a te dane to po prostu suma. ("each code quality violation detected by
normanos - Dług technologiczny wybranych projektów w #php - jak widać z #laravel wcal...

źródło: comment_S8kTNgbRPCsv5yvZIrprzFGgJqglSIr4.jpg

Pobierz
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Stron postawionych na WP jest od cholery i ciut ciut, więc to raczej oczywiste, że "naruszeń jakości kodu" będzie więcej.


@Marmite: Wordpress sam w sobie jest naruszeniem jakości kodu i powinien być zaorany i przepisany od nowa.
  • Odpowiedz
Mam takiego helpera:

function flight_duration($speed, $distance)

{//Obliczamy czas lotu

if(!
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Taaadaam, oto mój pierwszy test jednostkowy w życiu:

class GreatCircleDistanceTest extends TestCase {

public function testDistance()

{
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kot1401: Źle robisz, że chcesz do takich rzeczy wykorzystywać globalne funkcje. Dopisz więcej przypadków, żeby mieć pewność, że działa poprawnie i utwórz sobie klasę.
  • Odpowiedz
Mam w Laravelu dwa modele: User i Car

Car może być stworzony (kupiony) tylko jeśli user ma wystrarczającą ilość gotówki, czyli:

if($user->money - $car->price >= 0) {

//user
  • 17
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kot1401: Kontroler – odpowiada za komunikację między protokołem HTTP, a modelem aplikacji – tutaj bierzesz sobie GETy/POSTy/sesje/ciastka/itp i przekazujesz je dalej. Nic wiecej.

Entity\Car
– tutaj masz reprezentację samochodu. Przechowuje ona stan i raczej jest powiązana z bazą danych – nie ładowałbym logiki biznesowej (chyba, że robisz #ddd, ale wątpię, więc nie będę Ci mieszać).

Warstwa usług – tutaj ładujesz logikę biznesową. Czyli robisz sobie klasy dedykowane pod zadanie
  • Odpowiedz
Witam, wie ktos moze czemu wyswietla mi w widoku taka date "-0001-11-30 00:00:00" a w bazie jest "2014-10-16 11:07:30"?

W Laravel 4 z tego co pamietam dzialalo ok, ale przesiadalem sie na Laravel 5 i juz nie jest ok.

Wyswietlam tak:

{{
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Ja chyba jestem za głupi na #laravel. Oczekiwałem OOP, a mam... nie wiem co.

Np. w routes.php jest taki kod:

Route::get('/', function()
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki, tworzę sobie w ramach zabawy grę przeglądarkową z gatunku Airline Manager, w której prowadzicie własną linię lotniczą.

Wrzucam tutaj pierwszego screena.

Na razie funkcjonalność jest bardzo ograniczona: można planować loty nie-rejsowe i oglądać ich przebieg, a także wyświetlać podstawowe informacje o lotniskach, flocie i istniejących liniach lotniczych.

Teraz
kot1401 - Mirki, tworzę sobie w ramach zabawy grę przeglądarkową z gatunku Airline Ma...

źródło: comment_RnqXlHY277JDlDAFBVTshgLdr2TDFLYV.jpg

Pobierz
  • 25
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Pocket Planes


@Reeposter: chciałbym właśnie uniknąć różnych humorystycznych akcentów, grafik itp. jak w Pocket Planes, czy Airline Tycoon.

Będzie to coś bardziej w stylu http://www.airlinesim.aero/ czyli stawiające na realizm itp.

BTW. Airline Sim to najbardziej rozbudowana tego typu gra, niestety płatna :/
  • Odpowiedz