This post comes from the first version of this blog.
Please send me an email if anything needs an update. Thanks!
Framework symfony to bezsprzecznie jeden z najlepszych frameworków, jakie miałem okazję testować. Zarówno poziom zaawansowania kodu, jak też łatwość tworzenia nowych funkcjonalności w stronach internetowych czynią go naprawdę genialnym narzędziem w rękach programisty. W dzisiejszym wpisie chciałbym pokazać, jak w prosty sposób zintegrować edytor WYSIWYG - CKEditor z polami
Fotografia: CalEvans, CC-BY-SA.
Wstęp: Przygotowanie projektu do integracji.
Aby zintegrować CKEditor z naszym panelem administracyjnym potrzebujemy następujących składników:- biblioteki CKEditor [w momencie pisania artykułu wersja 3.6],
- projektu w symfony jeszcze bez wygenerowanej aplikacji panelu.
php symfony generate:app backend
Przypuśćmy, że będziemy operować na następującym modelu:
page:
tableName: pages
columns:
id:
type: integer(4)
primary: true
notnull: true
autoincrement: true
name:
type: string(255)
default: null
slug:
type: string(255)
unique: true
default: null
content:
type: clob(65535)
default: null
icon:
type: string(255)
Będziemy potrzebowali klas modelu dla podanego wyżej kodu, a więc:
php symfony doctrine:build --all-classes
Co załatwia kwestię generowania samego kodu. W tym momencie potrzebujemy już tylko modułu w aplikacji backend, który będzie zarządzał modelem Page:
php symfony doctrine:generate-admin backend page
I voila! Mamy już wszystko, czego potrzebowaliśmy. Kiedy klikniemy edycję danego rekordu, zamiast ładnego edytora pojawia nam się jednak zwykłe pole