Codeigniter 添加后的Crud默认值

Codeigniter 添加后的Crud默认值,codeigniter,grocery-crud,Codeigniter,Grocery Crud,我需要添加默认图像后,若用户并没有选择一个图像上传。 字段以加载图像(可选)。 我怎样才能做到 我使用这个控制器。 public function news() { $cur_user_id['user_id'] = $this->ion_auth->user()->row()->user_id; $this->db->update('news', $cur_user_id); $crud = new groc

我需要添加默认图像后,若用户并没有选择一个图像上传。 字段以加载图像(可选)。 我怎样才能做到

我使用这个控制器。

public function news() {
        $cur_user_id['user_id'] = $this->ion_auth->user()->row()->user_id;
        $this->db->update('news', $cur_user_id);

        $crud = new grocery_CRUD();
        $crud->set_table('news')
                ->display_as('title', 'Заголовок')
                ->display_as('content', 'Текст')
                ->display_as('date', 'Дата')
                ->display_as('urlpict', 'Изображение')
                ->display_as('hide', 'Отображение')
                ->display_as('tags', 'Теги')
                ->display_as('add_new_tags', 'Добавить новые теги')
                ->display_as('menu_id', 'Раздел меню');
        $crud->unset_columns('user_id');
        $crud->required_fields('title', 'content', 'date', 'hide');
        //relation
        $crud->set_relation('menu_id', 'my_menu', 'name');
        $crud->set_relation_n_n('tags', 'tag2art', 'tags', 'art_id', 'tag_id', 'tag');
        //configuration for uploading 
        $this->config->set_item('grocery_crud_file_upload_allow_file_types', 'gif|jpeg|jpg|png');
        $crud->set_field_upload('urlpict', 'assets/uploads/images');
        //callback function

        $crud->callback_after_upload(array($this, 'func_callback_after_upload'));

        $state = $crud->getState();
        $state_info = $crud->getStateInfo();

        if ($state == 'add') {
            $crud->fields('title', 'content', 'date', 'urlpict', 'hide', 'tags', 'add_new_tags', 'menu_id');
            $crud->callback_add_field('add_new_tags', array($this, 'add_field_callback_1'));
        } else {
            $crud->unset_fields('add_new_tags', 'views', 'user_id');
        }
        $output = $crud->render();
        $this->load->view('administrator/news', $output);
    }
这是我的回调函数

function func_callback_after_upload($uploader_response, $field_info, $files_to_upload) 
{

    $config['image_library'] = 'gd2';
    $config['source_image'] = $field_info->upload_path . '/' . $uploader_response[0]->name;
    $config['create_thumb'] = FALSE;
    $config['maintain_ratio'] = TRUE; 
    $config['width'] = 175;
    $config['height'] = 175;

    $this->load->library('image_lib', $config); 
    $this->image_lib->resize(); 
      return true;
}

矿山解决方案 相反,
$crud->更新后回调(数组($this,'default\u img')
我在插入后使用了
$crud->callback\u(数组($this,'default\u img')

和我的控制器

function default_img($post_array, $primary_key) {
        if (!$this->input->post('urlpict')) {
            $default_img = array(
                "id" => $primary_key,
                "urlpict" => "news_default.png"
            );

            $this->db->update('news', $default_img, array('id' => $primary_key));
            return true;
        }
    }

如何设置下载的默认值?$crud->set_field_upload('urlpict','assets/uploads/images');我不认为Codeigniter有这样的功能,但您可以检查是否为文件字段选择了一个文件,并相应地执行您的逻辑。若文件被选中,那个么你们可以上传选中的文件,否则你们可以上传默认的fileLogical解决方案,我想这么做,但并非不可能<代码>代码
$crud->更新后回调(数组($this,'default\u img'))
code
callback\u函数default\u img($post\u array,$primary\u key){if(!$this->input->post('urlpict')){$default\u img=array(“id”=>$primary\u key,“urlpict”=>“news\u default.png”);$this->db->update('news',$default img);return true;}}}但没有我没有得到的结果