首页 文章

在Grocery CRUD中使用edit.php中的数组或对象

提问于
浏览
0

我有这个代码:

public function render() {

    // Apply filters if any
    $this->applyFilters();

    // Define Columns and Fields
    $columns = array('code', 'name', 'fname', 'family', 'status' );

    if ( $this->ci->uri->segment(3)=='edit' ){
        $fields = array('name', 'surname', 'fname', 'gender', 'birth', 'address', 'zip', 'city', 'region', 'section', 'district', 'citizenship', 'phone', 'email', 'identity', 'afm', 'amka',
                    'family', 'education', 'education_reason', 'marital', 'protected_members', 'occupation', 'unemployment_card', 'social_security', 'income', 'income_from', 'allowances', 'profile_info',
                    'vulnerable', 'guardianship', 'outcast', 'learning_difficulties', 'homeless_reverse', 'homeless_reverse_way', 'history', 
                    'family_type', 'family_head', 'residence', 'residence_size', 'residence_rooms', 'electricity', 'hot_water', 'internet', 'family_info', 'status');
    }
    else{
        $fields = array('name', 'surname', 'fname', 'gender', 'birth', 'address', 'zip', 'city', 'region', 'section', 'district', 'citizenship', 'phone', 'email', 'identity', 'afm', 'amka',
            'family', 'education', 'education_reason', 'marital', 'protected_members', 'occupation', 'unemployment_card', 'social_security', 'income', 'income_from', 'allowances', 'profile_info');
    }

    $this->ci->uri->segment(3) == "export" ? $this->crud->columns($fields) : $this->crud->columns($columns);

    // Set Labels. We set labels upfront because we may need to overwrite a label using the traditional way
    $this->setLabels($fields);

    // Prepare CRUD
    $this->crud
        ->fields($fields)
        ->required_fields('gender', 'name', 'birth', 'status')
        ->display_as('residence_size', 'Αριθμός Δωματίων:')

    /* Set Relations */
        ->set_relation('gender', '_map_genders', 'title')
        ->set_relation('citizenship', '_map_citizenship', 'title')
        ->set_relation('family','beneficiaries','{name} {surname} ({fname})', NULL, 'id ASC')
        ->set_relation('education', '_map_education', 'title', NULL, 'id ASC')
        ->set_relation('marital', '_map_marital', 'title')
        ->set_relation('occupation', '_map_occupation', 'title')
        ->set_relation('unemployment_card', '_map_unemployment_card', 'title', NULL, 'id ASC')
        ->set_relation('social_security', '_map_social_security', 'title')
        ->set_relation('income_from', '_map_income_from', 'title')
        ->set_relation_n_n('allowances', 'allowances_link', '_map_allowances', 'beneficiary_id', 'map_id', 'title', NULL)
        ->set_relation_n_n('vulnerable', 'vulnerable_link', '_map_vulnerable', 'beneficiary_id', 'map_id', 'title', NULL)
        ->set_relation('guardianship','beneficiaries','{name} {surname} ({fname})', NULL, 'id ASC')
        ->set_relation('outcast', '_map_outcast', 'title')
        ->set_relation('learning_difficulties', '_map_learning_difficulties', 'title')
        ->set_relation_n_n('indirect_income', 'indirect_income_link', '_map_indirect_income', 'beneficiary_id', 'map_id', 'title', NULL)
        ->set_relation_n_n('homeless_reason', 'homeless_reason_link', '_map_homeless_reason', 'beneficiary_id', 'map_id', 'title', NULL)
        ->set_relation_n_n('homeless_reverse_way', 'homeless_reverse_way_link', '_map_homeless_reverse_way', 'beneficiary_id', 'map_id', 'title', NULL)
        ->set_relation('status', 'statuses', '{title}', 'statuses.mode = "generic"');


    if ( $this->ci->uri->segment(3)=='edit' ){
        $this->crud
            ->callback_update(array($this,'callback_update'))
            ->callback_field('family_type', array($this,'callback_field_family_type'))
            ->callback_field('family_head', array($this,'callback_field_family_head'))
            ->callback_field('residence', array($this,'callback_field_residence'))
            ->callback_field('residence_size', array($this,'callback_field_residence_size'))
            ->callback_field('residence_rooms', array($this,'callback_field_residence_rooms'))
            ->callback_field('electricity', array($this,'callback_field_electricity'))
            ->callback_field('hot_water', array($this,'callback_field_hot_water'))
            ->callback_field('internet', array($this,'callback_field_internet'))
            ->callback_field('family_info', array($this,'callback_field_family_info'))
            ->callback_field('status', array($this,'callback_field_status'));

    }
    return $this->crud->render($tabs);
}

我正在努力将数组或对象从此函数传输到 assets/grocery-grud/themes/bootstrap/edit.php 文件 .

你知道我怎么能这样做吗?

我试图在 libraries/grocery_crud.php 中的grocery_crud类中创建一个新的受保护变量但不成功 .

你知道这是否正确吗?

1 回答

  • 0

    我解决了这个问题!

    将数组从我的模型传递到 assets/grocery-grud/themes/bootstrap/views/edit.php 文件的方法是使用会话 .

    在模型中,我将数组保存到我的会话中

    $my_object = array (  'foo' => 'my_contect' );
    
    $this->session->set_userdata($my_object);
    

    在edit.php文件中我用它得到它:

    $CI =& get_instance();
    
    $content= $CI->session->userdata('foo');
    
    echo($content);
    

相关问题