Я написал следующий «код вставки» таким образом, что могу использовать его много раз. Таким образом, не записывая имя таблицы в модели, я мог бы написать имя таблицы в контроллере.
модельная функция
function insertTable($table, $data) {
$this->db->insert($table, $data);
return $this->db->insert_id();
}
инструкция контроллера
$insert = $this->Model_Action->insertTable('student',$student_data)
Но я хочу сделать то же самое и в следующем коде. Есть ли способ заменить p_id на $id?
Модель
function delete_by_id($id)
{
$this->db->where('p_id', $id);
$this->db->delete('parent');
}
Контроллер
public function student_delete($id)
{
$this->load->model('Model_Action');
$this->Model_Action->delete_by_id($id);
echo json_encode(array("status" => TRUE));
}






Если вы хотите удалить строку таблицы «студенческий» по идентификатору, вы можете использовать приведенный ниже код.
function delete_by_id($id)
{
$this->db->delete('student', array('id' => $id));
}
Если вы хотите удалить другую строку таблицы по идентификатору:
function delete_by_id($table, $id)
{
$this->db->delete($table, array('id' => $id));
}
Да, ты можешь. твоя модель
function delete_by_id($column_name, $id){
$this->db->where($column_name, $id);
$this->db->delete('parent');
}
затем используйте его в методах контроллера student_delete, например
$this->Model_Action->delete_by_id('p_id', $id);
Ну, вы должны использовать основные классы codeigniter.
В иерархии папок есть папка с именем core, в которой вы можете создать родительский контроллер и модель.
Вы можете сделать все функции модели, которые мы используем почти во всех моделях, например, для создания, обновления, удаления, чтения записей в этой родительской модели и наследовать модели наших приложений от этой модели.
В нашем контроллере нам просто нужно получить имя модели и использовать эти функции.
Примечание. Я использую тот же способ с 2018 года.
Вы можете определить Table_name в модели для многократного использования методов вставки, удаления, редактирования.
Вы можете использовать, где условия используют условие мудро.
Бывший.
function get($id='',$name='')
{
if ($id >0)
{
$this->db->where('id',$id);
}
}
Контроллер:
Запишите требуемое имя таблицы базы данных в переменную $table в контроллере. И передайте переменную $table в модель.
Модель:
function insertTable($table, $data) {
$this->db->insert($table, $data);
return $this->db->insert_id();
}