2016-08-18 6 views
1

я могу добавить флажок, отредактировав следующий файл вручную:Как добавить пользовательский атрибут (флажок)?

app/design/adminhtml/default/default/template/sales/order/view/info.phtml 

, но как я могу добавить пользовательский атрибут (флажок) без редактирования этого файла с помощью модуля Magento и как сохранить значение в базу данных?

Я уже знаю, как создать модуль, но я просто не получаю, как создать пользовательский атрибут с модулями magento.

Мне действительно нужен совет, с чего начать или как.

+0

Вы имеете в виду что вам нужно создать собственный атрибут заказа? –

+0

Да, я думаю, мне нужно добавить новый атрибут в sales_flat_order db и изменить его с помощью флажка –

+0

ok Позвольте мне предоставить вам шаги в ответ –

ответ

0

Создать папку: Orderattribute Путь: app/code/local/Custom/

Создать файл config.xml. Путь: app/code/local/Custom/Orderattribute/etc/config.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
     <Custom_Orderattribute> 
      <version>0.1.0</version> 
     </Custom_Orderattribute> 
    </modules> 
    <global> 
     <fieldsets> 
      <sales_convert_quote> 
       <package_attr> 
        <to_order>*</to_order> 
       </package_attr> 
      </sales_convert_quote> 
      <sales_convert_order> 
       <package_attr> 
        <to_quote>*</to_quote> 
       </package_attr> 
      </sales_convert_order> 
     </fieldsets> 
     <resources> 
      <orderattribute_setup> 
       <setup> 
        <module>Custom_Orderattribute</module> 
        <class>Mage_Sales_Model_Mysql4_Setup</class> 
       </setup> 
      </orderattribute_setup> 
     </resources> 
     <resources> 
      <orderattribute_setup> 
       <setup> 
        <module>Custom_Orderattribute</module> 
       </setup> 
       <connection> 
        <use>core_setup</use> 
       </connection> 
      </orderattribute_setup> 
     </resources> 
     <helpers> 
      <orderattribute> 
       <class>Custom_Orderattribute_Helper</class> 
      </orderattribute> 
     </helpers> 
    </global> 
</config> 

Создать папку: Путь: app/code/local/Custom/Orderattribute/Helper

Создание helper.php файла: Путь: app/code/local/Custom/Orderattribute/Helper/Data.php

<?php 

class Custom_Orderattribute_Helper_Data extends Mage_Core_Helper_Abstract { 

} 

Создать папку: Путь:

app/code/local/Custom/Orderattribute/sql 

Создать папку Путь: app/code/local/Custom/Orderattribute/orderattribute_setup

Создать файл mysql4 установить-0.1.0.php Путь: app/code/local/Custom/Orderattribute/orderattribute_setup/mysql4-install-0.1.0.php

<?php 
$installer = $this; 
$installer->startSetup(); 
$installer->addAttribute("order", "package_attr", array("type"=>"varchar")); 
$installer->addAttribute("quote", "package_attr", array("type"=>"varchar")); 
$installer->endSetup(); 

Modify этот файл:

app\design\adminhtml\default\default\template\sales\order\view\info.phtml 

<?php if($_order->getPackageAttr()): ?> 
<?php $status='checked'; ?> 
<?php endif; ?> 
<tr> 
    <td class="label"><label><?php echo Mage::helper('sales')->__('Other Options') ?></label></td> 
    <td class="value"><strong> <input type="checkbox" name="option" value="My option" <?php echo $status; ?>></strong></td> 
</tr> 
+0

Позвольте мне, если эта работа для вас или нет –

+0

Спасибо, еще не проверен. Просто вопрос: нужно ли добавлять атрибут к цитате? потому что я только хочу добавить в sales_flat_order? –

+1

ok, вы можете удалить этот код $ installer-> addAttribute ("quote", "package_attr", array ("type" => "varchar")); –

Смежные вопросы