Accueil » Tous les articles » Magento » Créer une colonne varchar dans Magento 1
plusieurs colonnes

Créer une colonne varchar dans Magento 1

Pour permettre un déploiement plus simple d’un projet développé sous Magento, il est conseillé d’utiliser les script d’installation pour ajouter des tables ou les mettre à jour. Cependant, en jetant un coup d’oeil dans la classe Varien_Db_Ddl_Table, on s’aperçoit que l’ensemble des types de texte TYPE_VARCHAR, TYPE_CLOB et TYPE_LONGVARCHAR sont convertis en TYPE_TEXT.

<?php

class Varien_Db_Ddl_Table
{       
    public function addColumn($name, $type, $size = null, $options = array(), $comment = null)
    {
        // Convert deprecated types
        switch ($type) {
            case self::TYPE_CHAR:
            case self::TYPE_VARCHAR:
            case self::TYPE_LONGVARCHAR:
            case self::TYPE_CLOB:
                $type = self::TYPE_TEXT;
                break;
            case self::TYPE_TINYINT:
                $type = self::TYPE_SMALLINT;
                break;
            case self::TYPE_DOUBLE:
            case self::TYPE_REAL:
                $type = self::TYPE_FLOAT;
                break;
            case self::TYPE_TIME:
                $type = self::TYPE_TIMESTAMP;
                break;
            case self::TYPE_BINARY:
            case self::TYPE_LONGVARBINARY:
                $type = self::TYPE_BLOB;
                break;
        }
   }
}
PHP

Dans ce cas, comment avoir un varchar dans un script d’installation. Cela est très simple : il suffit de définir une longueur au champ texte qu’on veut mettre en place.

<?php
     $installer->getConnection()
        ->addColumn($installer->getTable('monmodule/matable'), 'page_url',  array(
            'type' => Varien_Db_Ddl_Table::TYPE_TEXT,
            'default' => NULL,
            'nullable' => true,
            'LENGTH' => 125,
            'comment' => 'Url of the page'
        ));
PHP

Besoin d’aide pour mettre cela en place ?


Publié

dans

,

par

Commentaires

Laisser un commentaire