app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji src/ - folder zawiera cały kod PHP aplikacji



Podobne dokumenty
app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji Można wybrać sposób zapisu konfiguracji: YML, XML, PHP

Baza danych i ORM mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Backend Administratora

URL, URI różnice i podobieństwa

Wprowadzenie do framework a Symfony

Laboratorium 7 Blog: dodawanie i edycja wpisów

REFERAT O PRACY DYPLOMOWEJ

Laboratorium 6 Tworzenie bloga w Zend Framework

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Symfony w przykładach / Włodzimierz Gajda. Gliwice, cop Spis treści. Podziękowania 13 Wstęp 15

Program szkolenia: Symfony, nowoczesny framework PHP

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

Mechanizm routingu mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Instalacja systemu zarządzania treścią (CMS): Joomla

Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller

Instrukcja obsługi systemu zarządzania treścią dwajeden.pl

Instalacja i obsługa aplikacji MAC Diagnoza EW

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

Dokumentacja Skryptu Mapy ver.1.1

Instrukcja instalacji wtyczki Przelewy24

Instrukcja instalacji i użytkowania Modułu Your Pay dla Prestashop 1.6

Opis modułu pl.id w programie Komornik SQL-VAT

Instalacja i obsługa aplikacji MAC Diagnoza EP w celu wykonania Diagnozy rozszerzonej

APLIKACJA SHAREPOINT

Poprawne opisanie szkoły dla dorosłych w module Administrowanie. 1. Zaloguj się do systemu jako administrator i uruchom moduł Administrowanie.

ELEKTRONICZNA KSIĄŻKA ZDARZEŃ

Spis treści. Ulotka 2 v.7.3

5. Mechanizm szablonów.

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Technologie Internetowe Raport z wykonanego projektu Temat: Internetowy sklep elektroniczny


Wprowadzenie do Doctrine ORM

E-book: Automatyzacja powiadomień SMS. CASE STUDY

UONET+ moduł Sekretariat. Gromadzenie danych uczniów

Tworzenie modułów. Wymagania aplikacji. Tworzenie modułów. Architektura aplikacji. controllers

Rejestrowanie pracownika w bazie danych przez administratora. 1. Zaloguj się do systemu UONET+ jako administrator i uruchom moduł Administrowanie.

Poznaj ASP.NET MVC. Kamil Cieślak Microsoft Student Partner

Instalacja i obsługa aplikacji MAC Diagnoza EP w celu wykonania Arkusza obserwacji

Jak zarejestrować użytkownika w bazie systemu UONET+?

1. Proszę wejść na stronę: poczta.home.pl i zalogować się do nowej skrzynki za pomocą otrzymanych danych.

Instrukcja pozyskania identyfikatora - UID

BSX PRINTER INSTRUKCJA UŻYTKOWNIKA. Autor: Karol Wierzchołowski 30 marca 2015

Opis modułu pl.id w programie Komornik SQL-VAT

Platforma e-learningowa

Przelewy24 Wirtualny Koszyk

Poradnik użytkowania strony internetowej Sprawnego Dolnoślązaczka

Jak zarejestrować użytkownika w bazie systemu UONET+?

Dokumentacja fillup - MS SQL

Ewolucja projektowania aplikacji w PHP na bazie frameworka Symfony 2

Finanse VULCAN. Jednostki dodaje i konfiguruje administrator główny platformy (w aplikacji Zarządzanie platformą).

Przykładowy Projekt i

Programowanie w Sieci Internet Python - c. d. Kraków, 28 listopada 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki

Profil pracy wariant konfiguracji programu obejmujący m.in język, walutę, konto allegro, szablon aukcji, zdefiniowane koszty wysyłki itp.

Dokumentacja Administratora aplikacji Podsystem administracyjny

Aplikacja Shoper Appstore Instrukcja obsługi (wersja instrukcji 1.0)

System Obsługi Zleceń

Zbieranie kontaktów.

Finanse VULCAN. Jak wykonać przelew zwrotny do zrealizowanego przelewu bankowego?

Zarządzanie kontaktami

Podręcznik Użytkownika LSI WRPO

Laboratorium nr 3 Podstawy Ruby on Rails

Podręcznik Sprzedającego. Portal aukcyjny

Smarty PHP. Leksykon kieszonkowy

Instrukcja laboratoryjna

Instrukcja obsługi Zaplecza epk dla Pracowników Instytucji w zakresie zarządzania danymi szczegółowymi dotyczącymi sposobu realizacji procedury

a. (20 pkt.) Aplikacja powinna zawierać następujące elementy: 2. Formularz edycji profilu użytkownika (2 pkt.).

Administrator budynku Art. 1456B Vdc. Art 1456B PL INSTRUKCJA TECHNICZNA A2 A3 A4

Ceneo. (Moduł Magento) v.1.5.0

raporty-online podręcznik użytkownika

PRÓBNY EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE CZĘŚĆ PRAKTYCZNA

SPECYFIKACJA WYMAGAŃ. w zakresie migracji i uruchomienia nowego serwisu WWW na potrzeby PKP S.A.

INSTRUKCJA UŻYTKOWNIKA GENERATORA WNIOSKÓW O DOFINANSOWANIE DLA WNIOSKODAWCÓW

Przelewy24 Wirtualny Koszyk

Dokumentowanie zajęć realizowanych w grupach. także międzyoddziałowych.

Institution data management

Dokumentacja Użytkownika Systemu

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Pliki zorganizowano w strukturze drzewiastej odzwierciedlając strukturę logiczną aplikacji:

Frogfoot CMS.

Problemy techniczne. Jak można zmienić dane licencjobiorcy?

Instrukcja korzystania z modułu Onet Export (wtyczka oscommerce) (wersja )

INFRA. System Connector. Opis systemu

Przewodnik użytkownika (instrukcja) AutoMagicTest

Modele danych walidacja widoki zorientowane na model

Instrukcja instalacji wtyczki Przelewy24

UONET+ moduł Dziennik. Rejestrowanie frekwencji uczniów na lekcjach w widoku Lekcja

Uruchomienie aplikacji elektronicznych na platformie epuap

Nowe funkcjonalności wersji

Platforma internetowa podręczna instrukcja

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

8. Generowanie raportów

WYSYŁAJ PRZESYŁKI DHL PROSTO Z MAGENTO

Podstawy technologii WWW

Kancelaria Prawna.WEB - POMOC

SPECYFIKACJA WDROŻENIA SKLEPU MAGENTO

FARA INTENCJE ONLINE. Przewodnik dla użytkownika programu FARA. Włodzimierz Kessler SIGNUM-NET

Moduł Handlowo-Magazynowy Przeprowadzanie inwentaryzacji z użyciem kolektorów danych

Przykłady i kursy Wersja 7 Wydanie 5. Przykładowy kurs rekrutacji dla produktu IBM Process Designer

Instrukcja konfiguracji funkcji skanowania

Transkrypt:

Baza danych i ORM

Projekt zestaw usług dostępnych pod daną domeną. Aplikacja niezależnie działające programy/serwisy (w obrębie pojektu). Zwyczajowo projekt posiada dwie aplikacje: Frontend Backend Moduł reprezentacja strony lub grupy stron mających podobne zadanie/przeznaczenie. Przykładowe moduły: główna, artykuły, kontakt, sklep itp. Akcja możliwa do uruchomienia funkcjonalność. Moduły grupują akcje. Przykładowy moduł koszyka sklepowego może mieć akcje: dodaj, pokaż, zaktualizuj, usuń.

app/ - folder zawiera pliki konfiguracyjne dla całej aplikacji Można wybrać sposób zapisu konfiguracji: YML, XML, PHP src/ - folder zawiera cały kod PHP aplikacji vendor/ - plik zawiera biblioteki i wtyczki dodatkowe web/ - publicznie dostępne zasoby prezentujące aplikację zewnętrznym użytkownikom

Tutaj trafiają wszystkie statyczne pliki m.in. Skrypty JS Grafiki Arkusze styli Oraz Front Controler

AppKernel.php główny punkt wejściowy aplikacji. Musi implementować 2 metody: registerbundles() zwraca tablicę wszystkich Bundle, które są wymagane by aplikacja działała poprawnie, registercontainerconfiguration() ładuje pliki konfiguracyjne. app/config pliki konfiguracyjne np. mechanizmu routingu, app/cache pamięć podręczna aplikacji, app/logs pliki dzienników, app/resources szablony i inne zasoby

vendor/autoload.php jego zadaniem jest automatyczne załadowanie wszystkich plików aplikacji znajdujących się w katalogu src/ composer.json Schemat nazewnictwa by autoloader działał:

Bundle ustrukturalizowany zbiór plików, które implementują zadaną funkcjonalność np. BlogBundle, ForumBunde itp. Aplikacja składa się z jednego lub wielu Bundle, zdefiniowanych w metodzie registerbundles() klasy AppKernel.

Controller/ - zawiera wszystkie kontrolery Bundle (np. Default) DependencyInjection/ - przechowuje pewne klasy dodatkowe (nie jest wymagana) Resources/config/ - przechowuje całą konfigurację Resources/views/ - zawiera template y uporządkowane według nazwy kontrolera (np. Default\index.html.twig) Resources/public/ - zawiera zasoby web (grafiki, style css) i posiada dowiązanie symboliczne do katalogu web/ poprzez zastosowanie komendy assets:install Tests/ - zawiera testy wygenerowane dla Bundle

Role użytkowników Administrator zarządza wszystkimi ogłoszeniami i ich kategoriami. Użytkownik może przeglądać aktywne ogłoszenia z danych kategorii Zarejestrowany użytkownik może dodawać nowe ogłoszenia. Projekt ma dwie aplikacje: frontend i backend. Scenariusze użycia: Na stronie głównej wyświetlają się użytkownikowi ostatnie aktywne ogłoszenia. Użytkownik może wyświetlić wszystkie ogłoszenia należące do danej kategorii. Użytkownik może kliknąć na ogłoszenie by zobaczyć jego szczegóły. Zarejestrowany użytkownik może dodać nowe ogłoszenie należące do danej kategorii.

Proszę narysować diagram ERD dla proponowanej bazy danych dla studenckiego systemu ogłoszeń. Proszę uwzględnić, że każde ogłoszenie ma jakąś datę ważności, kategorię do której należy, oraz użytkownik aby dodać lub edytować ogłoszenie musi posiadać zarejestrowane konto w systemie. Dodatkowo, proszę pamiętać o roli administratora. Baza danych powinna zostać sprowadzona do 3 postaci normalnej.

1. Model koncepcyjny 2. YAML 3. Podłączenie modelu do projektu 4. Wygenerowanie schematu 5. Populacja danymi 6. Generowanie modyfikatorów i akcesorów

Zapoznaj się z wykorzystaniem ORM (doctrine): http://www.ens.ro/2012/03/27/symfony2-jobeetday-3-the-data-model/ i stwórz bazę danych dla systemu ogłoszeń studenckich. Następnie wypełnij ją przykładową treścią. Stwórz w tym celu dwie tablice: Ad: name, email, phone, description, location, url, is_public, is_activated, expires_at, created_at, updated_at Category: name Sprawdź, czy został wygenerowany stosowny formularz do dodawania ogłoszeń i spróbuj za jego pomocą również dodać jakieś dane. Proszę nie stosować polskich liter i uważać na białe znaki.

Category.orm.yml Ad.orm.yml

Entity/ - warstwa modelowa Resources/views/ - warstwa widoku app.php i app_dev.php główne kontrolery Widok oparty jest na wzorcu dekorator. http://www.oreilly.com/catalog/hfdesignpat/ chapter/ch03.pdf

Na podstawie http://www.ens.ro/2012/03/31/symfony2-jobeet-day-4-thecontroller-and-the-view/ stwórz layout.html.twig. Usuń z niego sekcje odnośnie: {% if app.session.hasflash('notice') %} <div class="flash_notice"> {{ app.session.flash('notice') }} </div> {% endif %} {% if app.session.hasflash('error') %} <div class="flash_error"> {{ app.session.flash('error') }} </div> {% endif %} oraz <ul> <li><a href="">about Jobeet</a></li> <li class="feed"><a href="">full feed</a></li> <li><a href="">jobeet API</a></li> <li class="last"><a href="">affiliates</a></li> </ul> i dokonaj jego spolszczenia. Pamiętaj o nazewnictwie ścieżek i bundle.

Zmodyfikuj szablony show.html.twig, edit.html.twig, index.html.twig, new.html.twig usuwając z nich linie: {% extends '::base.html.twig' %} oraz dopisz do ich początku: {% extends 'EnsStudAdBundle::layout.html.twig' %} Dodaj grafiki i arkuszy styli, modyfikując odpowiednio pliki twig show i index.

Popraw szablon, tak by rezultat był następujący:

Popraw szablon, tak by rezultat był następujący: