開発中のモバイル アプリの Web サービス バックエンドを作成しています。(私は経験豊富な Obj-C 開発者であり、Web デザイナーではありません!) 基本的には、Codeigniter と Phil Sturgeon の RESTful API サーバーhttps://github.com/philsturgeon/codeigniter-restserverを使用したいと考えています。すべてのセットアップと動作に問題があります。
その中にデータを入れてセットアップされたMySQLデータベースがあります。そして、そのデータベースの内容の JSON データを返す CodeIgniter PHP モデルとコントローラーを作成するための助けが必要です。私が見つけたすべてのチュートリアルとフォーラムの投稿は、MySQL データベースではなく、コントローラーのハードコードされたデータを扱っています。理想的には、このhttp://api.mysite.com/v1/search?id=1&name=foo&city=barのように URL をフォーマットしたいと思います。URLに渡すパラメーターが 50 以上ある可能性があります。
Phil のコードを使用して、コントローラーとしてこれを思いつきました。
public function index_get()
{
if (!$this->get('id'))
{
$this->response(NULL, 400);
}
$data = $this->grid_m->get_id($this->get('id'));
if ($data)
{
$this->response($data, 200);
}
else
{
$this->response(NULL, 404);
}
}
id?=# という 1 つの検索語しか取得できません。複数の検索語を取得する方法を知る必要があります。
ここに私のコードイグナイターモデルがあります:
<?php
class Grid_m extends CI_Model
{
function get_all()
{
$query = $this->db->get('grid');
if ($query->num_rows() > 0)
{
return $query->result();
}
return FALSE;;
}
これは、URL で渡す ID または URL 用語に関係なく、MySQL データベースのすべてを返すだけです。
私は独自のカスタム API を開発することに関しては非常に初心者なので、コントローラーとデータベース モデルを修正する方法についての提案は非常に役立ちます!
助けてくれてありがとう!
-ブライアン