1

Grid.php にエピレーション日付の列を作成する次のコードがあります。現在、空のDBフィールドからデータを取得します。列に日付ピッカーを配置して、選択した日付をDBに保存し、それを管理者に表示したいからです。それが可能であることは知っています$fieldsetが、使用する必要がありますaddColumn

$this->addColumn('expiration_date', array(
            'header' => Mage::helper('AdvancedStock')->__('Expiration Date'),
            'index' => $this['expiration_date'],
            'type' => 'datetime',
    ));

助けてください。

4

2 に答える 2

1

これをどこから取得しているのかわかりません: $this['expiration_date']

しかし、それはうまくいくはずです。ファイラーとソート可能を手動で設定してみてください。

array(
    'index'     => 'fieldname',
    'filter'    => true,
    'sortable'  => true,
    'type'      => 'datetime',
)

_prepareCollection() メソッドを変更して、追加した非標準フィールドの場合は、コレクション クエリにフィールド名が含まれていることを確認する必要もあります。

これは、使用しているコレクション モデルによって若干異なります。

$collection->addFieldToSelect('fieldname');
于 2012-09-18T09:24:44.890 に答える
0

type => 'datetime' の代わりに type='date' を試してください。それが役に立てば幸い。追加する必要があります

  <reference name="head">
        <action method="addItem">
            <type>js_css</type>
            <name>calendar/calendar-win2k-1.css</name>
            <params/><!--<if/><condition>can_load_calendar_js</condition>-->
        </action>
        <action method="addItem">
            <type>js</type>
            <name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>-->
        </action>
        <action method="addItem">
            <type>js</type>
            <name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>-->
        </action>
    </reference>

design/adminhtml/ .../layout 内の、変更したモジュールに対応する xml ファイル内。

于 2012-09-18T12:12:52.880 に答える