cara mengatur ulang filter saat memuat koleksi di modul khusus magento


9

Saya telah membuat modul khusus di backend untuk menampilkan hasil pencarian 'imei' di admin grid.

1) di bawah ini adalah halaman rumah untuk mencari imei. masukkan deskripsi gambar di sini

2) halaman hasil pencarian.

masukkan deskripsi gambar di sini

3) setelah mencari saya masukkan nilai katakanlah misalnya 23 dalam pencarian bidang teks imei. masukkan deskripsi gambar di sini

4) sekarang saya akan kembali ke halaman rumah dan mencari nilai lain.

masukkan deskripsi gambar di sini

5) tetapi sekarang saya tidak mendapatkan catatan ditemukan, tetapi ada catatan untuk pencarian tertentu.

masukkan deskripsi gambar di sini

karena ini terjadi, saya harus mengatur ulang filter pada memuat koleksi.

Jawaban:


3

Edit file grid.php dalam modul khusus Anda,

Secara default,

public function __construct()
{
 parent::__construct();
 $this->setId('productsGrid');
 // This is the primary key of the database
 $this->setDefaultSort('id');
 $this->setDefaultDir('ASC');
 $this->setSaveParametersInSession(true);
 $this->setUseAjax(true);
}

Ubah kode menjadi,

public function __construct()
{
    parent::__construct();
    $this->setId('productsGrid');
    // This is the primary key of the database
    $this->setDefaultSort('id');
    $this->setDefaultDir('ASC');
    $this->setUseAjax(true);
}

0

Anda perlu meneruskan nilai filter Anda base64_encoded ke controller yang sesuai. Nilai filter diproses oleh Mage_Adminhtml_Block_Widget_Grid::_prepareCollection().

Nilai didekodekan terlebih dahulu dan kemudian diatur dalam sesi:

    $data = $this->helper('adminhtml')->prepareFilterString($filter);
    $this->_setFilterValues($data);

Saya akan mulai instantiating objek grid.js. Lihatlah metode doFilter()dan resetFilter().

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.