Привет! Я написал код для получения данных из таблицы для конкретного города по его конкретному идентификатору, но всякий раз, когда я использую метод get в почтальоне, он получает все данные, а не данные о конкретном городе, основываясь на идентификаторе, даже в URL-адресе, указанном идентификатором, с помощью переменной get.так как получить только те данные, которые упомянуты его идентификатором.
Ниже кода моего контроллера
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
require_once APPPATH . '/libraries/REST_Controller.php';
class Cities extends REST_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('cities_model');
}
public function index_get()
{
$id = $this->get('id');
$cities = $this->cities_model->get($id);
if (!is_null($cities)) {
$this->response(array('response' => $cities), 200);
} else {
$this->response(array('error' => 'No hay ciudades en la base de datos...'), 404);
}
}
?>
ниже код написан в модели
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Cities_model extends CI_Model
{
public function __construct()
{
parent::__construct();
}
public function get($id)
{
if (!is_null($id)) {
$query = $this->db->select('*')->from('cities')->where('id', $id)->get();
if ($query->num_rows() === 1) {
return $query->row_array();
}
return null;
}
$query = $this->db->select('*')->from('cities')->get();
if ($query->num_rows() > 0) {
return $query->result_array();
}
return null;
}
?>
URL, который яиспользовал в почтальоне вот так
по правилу 1
http://localhost:81/weatherapi/index.php/Cities/index?=1
по правилу 2
http://localhost:81/weatherapi/index.php/Cities/index/1
получая вывод вот так