dsj0312 2016-10-05 01:11
浏览 47

Codeigniter - 在MVC框架中使用RESTful Web服务

I am fairly new to programming in php and learning as I go. I recently started using an MVC framework (codeigniter) and I am now trying to learn the use of RESTful web services.

What I have trouble understanding is how the REST services fit into the MVC framework.

I have a basic proposal building system where the user walks through several forms and at the end I gather that information and create a formatted pdf for them.

I am using the https://github.com/chriskacerguis/codeigniter-restserver REST library and what I have done so far is wherever the information needs to be saved, updated or deleted in the program I have written the endpoint for the api to do that here is an example:

class Proposal extends REST_Controller 
{

   function __construct()
   {
    // Construct the parent class
    parent::__construct();
    //load model
    $this->load->model('proposal_model'); 

   }

   public function list_get()
   {
    // Users from a data store e.g. database
    $system = $this->proposal_model->get_proposals(); 
    json_encode($system); 
    $this->response($system, REST_Controller::HTTP_OK);   
   }
}

Here is the Model I am calling the data from:

Class proposal_model extends CI_Model 
{
    public function get_proposals() {

    //get proposal fields for realted table
    $sql = 'SELECT  proposal_name, 
                    customer_name, 
                    date_purchased, 
                    product_purchased
            FROM proposals 
            WHERE 1'; 

    $queryProposals = $this->db->query($sql);


    return $queryProposals->result();
  }

My main question is that it seems like the api endpoint replaces the controller, is this how it works? I am struggling a little bit to understand the flow of the architecture with RESTful services.

P.S I know the program I mentioned seems like it probably doesn't need the complication of REST but this is the first step in several programs which will all be using the same data source.

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 运筹学排序问题的应用
    • ¥15 ubuntu子系统密码忘记
    • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
    • ¥15 保护模式-系统加载-段寄存器
    • ¥15 电脑桌面设定一个区域禁止鼠标操作
    • ¥15 求NPF226060磁芯的详细资料
    • ¥15 使用R语言marginaleffects包进行边际效应图绘制
    • ¥20 usb设备兼容性问题
    • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
    • ¥15 安装svn网络有问题怎么办