অর্ডার ঠিকানার জন্য ভারচার কলাম যুক্ত করুন


13

আমি বিক্রয় / অর্ডার_ড্রেস টেবিলটিতে কয়েকটি বারচর ক্ষেত্র যুক্ত করার চেষ্টা করছি তবে একটি কলাম সংজ্ঞা ত্রুটির বিরুদ্ধে আসছি।

আমার কাছে নিম্নলিখিত কোড রয়েছে:

$oInstaller->getConnection()
    ->addColumn(
        $oInstaller->getTable('sales/order_address'),
        'address_email',
        array(
            'nullable' => false,
            'length' => 255,
            'type' => Varien_Db_Ddl_Table::TYPE_VARCHAR,
            'comment' => 'Company Email Address'
        )
    );

এটি ত্রুটি প্রদান করে: [message:protected] => Invalid column definition data

আমি যদি কোডটি ব্যবহারের জন্য পরিবর্তন করি Varien_Db_Ddl_Table::TYPE_INTEGERতবে কোডটি চলে এবং কলামটি যুক্ত হয়। আমি দৈর্ঘ্য এবং নমনীয় বৈশিষ্ট্যগুলি সরিয়ে দেওয়ার চেষ্টা করেছি তবে কোনও ফলসই হয়নি।

সম্পাদনা

স্ক্রিপ্ট আপডেট করার সময় নিম্নলিখিত আপডেট করা হয় তখন এটি কাজ করে। কেউ কি জানেন যে এই ত্রুটির কারণ?

$oInstaller->getConnection()
    ->addColumn(
        $oInstaller->getTable('sales/order_address'),
        'address_email',
        Varien_Db_Ddl_Table::TYPE_VARCHAR . '(255)'
    );

উত্তর:


52

ব্যবহার TYPE_TEXTTYPE_VARCHARঅবচয় করা হয় (@see Varien_Db_Adapter_Pdo_Mysql::$_ddlColumnTypes )

এবং স্টোরেজ স্পেস সম্পর্কে চিন্তা করবেন না। আপনি যদি প্রকারটি নির্দিষ্ট করে থাকেন TYPE_TEXTতবে সেট lengthকরতে দিন সেট করুন 255ম্যাগেন্টো একটি মাইএসকিউএল VARCHARটাইপ তৈরি করবে ।


2
কাজ! ->addColumn('name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array( 'nullable' => true, 'length' => 255, ), null)
মার্টিজ ভ্যান হুফ

আমি আশ্চর্য হয়েছি যে এটিই সাধারণ ছিল ... শ্রেণিটি বলে যে এটি অভ্যন্তরীণভাবে অবহেলিত প্রকারকে অ-অবহেলিত করে রূপান্তরিত করবে, তবে আমি মনে করি এটি পূর্ব-বিদ্যমান মানের জন্য? যে কোনও উপায়ে, প্লাস ওয়ান
রবি অ্যাভারিল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.