Jump to content

Foreign Key sur module


Recommended Posts

Bonjour,

Je débute sur prestashop (1.7.7.3), j'ai un module à créer. Pour ce module j'ai besoin d'une table dans ma bdd que je crée à l'installation du module (jusqu'ici tout va bien) mais quand je veux mettre une clé étrangère dans ma table pour faire référence à une table déjà existante, mon module ne s'installe plus et j'ai une erreur de type 500 : "Vous n'êtes pas autorisé à désactiver le module test_module"

Voici ma requête qui fonctionne :

```

$sql[] = 'CREATE TABLE IF NOT EXISTS `' . _DB_PREFIX_ . 'test_module` (
    `id_test_module` int(11) NOT NULL AUTO_INCREMENT,
    `Nom` VARCHAR(50) NOT NULL,
    `Prenom` VARCHAR(50) NOT NULL,
    PRIMARY KEY  (`id_test_module`)
) ENGINE=' . _MYSQL_ENGINE_ . ' DEFAULT CHARSET=utf8;'; 

```

et celle qui ne fonctionne pas :

```

$sql[] = 'CREATE TABLE IF NOT EXISTS `' . _DB_PREFIX_ . 'test_module` (
    `id_test_module` int(11) NOT NULL AUTO_INCREMENT,
    `Nom` VARCHAR(50) NOT NULL,
    `Prenom` VARCHAR(50) NOT NULL,
    `id_order` int(11) NOT NULL,
    PRIMARY KEY  (`id_test_module`),
    CONSTRAINT FK_Order FOREIGN KEY (id_order)
    REFERENCES ps_orders(id_order)
) ENGINE=' . _MYSQL_ENGINE_ . ' DEFAULT CHARSET=utf8;'; 

```


Comme je lis beaucoup de choses qui se contredisent sur les forums je préfère demander de l'aide directement.
Merci d'avance :)

Oldelaf

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More