Для получения полного доступа
зарегистрируйтесь.
Snippet,  PHP

Базовый запрос модели на CodeIgniter


Бывают моменты, когда необходимо сделать базовый запрос в вашей модели, например выводить записи с учётом языка. Данный пример показывает, как не дублировать постоянно код в каждом методе модели.

class Post extends CI_Model {
  
	protected $table = 'posts';
  
  	public function __construct() {
		$this->load->database(); 
    }
  
	/**
	 * Базовый запрос с ограничением по языку
	 */
    private function base_query() {
    	$lang = $this->session->userdata('lang') ? $this->session->userdata('lang') : 'ru';

        return $this->db->where('lang', $lang);
    }
  	
	/**
	 * Выборка всех постов
	 */
  	public function get_posts() {
		$query = $this->base_query()->get($this->table);

		return !is_null($query->row()->id) ? $query->row() : false;
    }
}
  codeigniter database model

Автор


dfatt
  • Reputation: 260
  • Snippets : 53
  • Revisions : 7
Подписаться

Чтобы увидеть комментарии, нужно быть участником сообщества

Регистрация