3 Commits

Author SHA1 Message Date
Jeremy Hoarau 9d3cfd4e1c fix migrations 2025-01-09 11:38:35 +04:00
Jeremy Hoarau d25c36277c Fix du formulaire de plat 2025-01-09 10:53:12 +04:00
Jeremy Hoarau b8b81a1241 Ajout du controller pour le partage vers les platformes de l'ivraison et les réseau sociaux 2025-01-09 10:40:42 +04:00
5 changed files with 90 additions and 73 deletions
-35
View File
@@ -1,35 +0,0 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250109055437 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE categorie (id INT AUTO_INCREMENT NOT NULL, nom VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE messenger_messages (id BIGINT AUTO_INCREMENT NOT NULL, body LONGTEXT NOT NULL, headers LONGTEXT NOT NULL, queue_name VARCHAR(190) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', available_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', delivered_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_75EA56E0FB7336F0 (queue_name), INDEX IDX_75EA56E0E3BD61CE (available_at), INDEX IDX_75EA56E016BA31DB (delivered_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE plat ADD CONSTRAINT FK_2038A207BCF5E72D FOREIGN KEY (categorie_id) REFERENCES categorie (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE plat DROP FOREIGN KEY FK_2038A207BCF5E72D');
$this->addSql('DROP TABLE categorie');
$this->addSql('DROP TABLE messenger_messages');
}
}
+49
View File
@@ -0,0 +1,49 @@
<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250109073710 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE categorie (id INT AUTO_INCREMENT NOT NULL, nom VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE menu (id INT AUTO_INCREMENT NOT NULL, restaurant_id INT DEFAULT NULL, nom VARCHAR(255) NOT NULL, date_de_creation DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_7D053A93B1E7706E (restaurant_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE menu_plat (menu_id INT NOT NULL, plat_id INT NOT NULL, INDEX IDX_E8775249CCD7E912 (menu_id), INDEX IDX_E8775249D73DB560 (plat_id), PRIMARY KEY(menu_id, plat_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE plat (id INT AUTO_INCREMENT NOT NULL, categorie_id INT DEFAULT NULL, nom VARCHAR(255) NOT NULL, description LONGTEXT NOT NULL, prix DOUBLE PRECISION NOT NULL, INDEX IDX_2038A207BCF5E72D (categorie_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE restaurant (id INT AUTO_INCREMENT NOT NULL, nom VARCHAR(255) NOT NULL, adresse VARCHAR(255) NOT NULL, telephone VARCHAR(255) NOT NULL, chef VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE messenger_messages (id BIGINT AUTO_INCREMENT NOT NULL, body LONGTEXT NOT NULL, headers LONGTEXT NOT NULL, queue_name VARCHAR(190) NOT NULL, created_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', available_at DATETIME NOT NULL COMMENT \'(DC2Type:datetime_immutable)\', delivered_at DATETIME DEFAULT NULL COMMENT \'(DC2Type:datetime_immutable)\', INDEX IDX_75EA56E0FB7336F0 (queue_name), INDEX IDX_75EA56E0E3BD61CE (available_at), INDEX IDX_75EA56E016BA31DB (delivered_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE menu ADD CONSTRAINT FK_7D053A93B1E7706E FOREIGN KEY (restaurant_id) REFERENCES restaurant (id)');
$this->addSql('ALTER TABLE menu_plat ADD CONSTRAINT FK_E8775249CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE menu_plat ADD CONSTRAINT FK_E8775249D73DB560 FOREIGN KEY (plat_id) REFERENCES plat (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE plat ADD CONSTRAINT FK_2038A207BCF5E72D FOREIGN KEY (categorie_id) REFERENCES categorie (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE menu DROP FOREIGN KEY FK_7D053A93B1E7706E');
$this->addSql('ALTER TABLE menu_plat DROP FOREIGN KEY FK_E8775249CCD7E912');
$this->addSql('ALTER TABLE menu_plat DROP FOREIGN KEY FK_E8775249D73DB560');
$this->addSql('ALTER TABLE plat DROP FOREIGN KEY FK_2038A207BCF5E72D');
$this->addSql('DROP TABLE categorie');
$this->addSql('DROP TABLE menu');
$this->addSql('DROP TABLE menu_plat');
$this->addSql('DROP TABLE plat');
$this->addSql('DROP TABLE restaurant');
$this->addSql('DROP TABLE messenger_messages');
}
}
+18
View File
@@ -0,0 +1,18 @@
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
class PartageController extends AbstractController
{
#[Route('/partage', name: 'app_partage')]
public function index(): Response
{
return $this->render('partage/index.html.twig', [
'controller_name' => 'PartageController',
]);
}
}
-5
View File
@@ -22,11 +22,6 @@ class PlatType extends AbstractType
'class' => categorie::class, 'class' => categorie::class,
'choice_label' => 'id', 'choice_label' => 'id',
]) ])
->add('menus', EntityType::class, [
'class' => Menu::class,
'choice_label' => 'id',
'multiple' => true,
])
; ;
} }
+23 -33
View File
@@ -4,39 +4,29 @@
{% endblock %} {% endblock %}
{% block body %} {% block body %}
<div class="container mx-auto px-4 py-8"> <div class="container mx-auto px-4 py-8">
<h1 class="text-4xl font-bold text-blue-600 mb-6">Bienvenue sur Mon Site</h1> <h1 class="text-4xl font-bold text-blue-600 mb-6">Bienvenue sur Mon Site</h1>
<div class="bg-gray-100 rounded-lg p-6 shadow-md"> <div class="bg-gray-100 rounded-lg p-6 shadow-md">
<h2 class="text-2xl font-semibold text-gray-800 mb-4">À propos de nous</h2> <h2 class="text-2xl font-semibold text-gray-800 mb-4">À propos de nous</h2>
<p class="text-gray-600 mb-4"> <p class="text-gray-600 mb-4">
Ceci est une page de base utilisant Tailwind CSS dans un projet Symfony. Ceci est une page de base utilisant Tailwind CSS dans un projet Symfony.
Si vous voyez cette page stylisée, cela signifie que Tailwind fonctionne correctement ! Si vous voyez cette page stylisée, cela signifie que Tailwind fonctionne correctement !
</p> </p>
<button class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded"> <button class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded">
En savoir plus En savoir plus
</button> </button>
</div> </div>
<div class="mt-8 grid grid-cols-1 md:grid-cols-2 gap-6"> <div class="mt-8 grid grid-cols-1 md:grid-cols-2 gap-6">
<!-- Fonctionnalité 1 --> <div class="bg-green-100 p-4 rounded-lg">
<div class="bg-green-100 p-4 rounded-lg"> <h3 class="text-xl font-semibold text-green-800 mb-2">Fonctionnalité 1</h3>
<h3 class="text-xl font-semibold text-green-800 mb-2">Fonctionnalité 1</h3> <p class="text-green-600">Description de la première fonctionnalité.</p>
<p class="text-green-600 mb-4">Gérer les menus.</p> </div>
<div class="flex space-x-4"> <div class="bg-yellow-100 p-4 rounded-lg">
<a href="{{ path('app_menu_new') }}" class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded"> <h3 class="text-xl font-semibold text-yellow-800 mb-2">Fonctionnalité 2</h3>
Créer un menu <p class="text-yellow-600">Description de la deuxième fonctionnalité.</p>
</a> </div>
<a href="{{ path('app_menu_index') }}" class="bg-yellow-500 hover:bg-yellow-700 text-white font-bold py-2 px-4 rounded"> </div>
Modifier un menu </div>
</a>
</div>
</div>
<!-- Fonctionnalité 2 -->
<div class="bg-yellow-100 p-4 rounded-lg">
<h3 class="text-xl font-semibold text-yellow-800 mb-2">Fonctionnalité 2</h3>
<p class="text-yellow-600">Description de la deuxième fonctionnalité.</p>
</div>
</div>
</div>
{% endblock %} {% endblock %}