как сделать массив разбивки на страницы в cakephp rest-api? - PullRequest
0 голосов
/ 29 июня 2019

CakePHP-разбиение на страницы Rest-API в массиве массивов. Например, в CakePHP содержится пагинация модели для уменьшения загрузки API.

Некоторый существующий код:

$this->request->data['page'];

$data = $this->Model1->find('all',array(
   'contain' => array('Model2'),
   'fields' => array(),
   'conditions' => array('Model1.status' => 1 ) 
));

Ниже ответа API, и я хочу разбить на страницы в массиве ProductUser, потому что при большой загрузке продукта в одноразовое приложение будет зависать. Можно или любым другим способом уменьшить загрузку данных в CakePHP.

Ответ API:

"status": true,
"message": "Available devices!",
"data": [
  {  
  "id": "6",
  "name": "Television",
  "parent_id": "0",
  "image": "",
  "status": "1",
  "created": "2019-06-10 15:22:44",
  "modified": "2019-06-10 15:22:44",
  "ProductUser": [  //Paginate this array
    {
      "id": "1",
      "user_id": "17",
      "category_id": "6",
      "brand_id": "1",
      "product_id": "17",
      "date_of_purchase": "2019-06-22",
      "seller_id": "1",
      "warranty_year": "0",
      "warranty_month": "0",
      "warranty_end_date": null,
      "purchese_price": null,
      "bill_upload": "",
      "emi_year": "0",
      "emi_month": "0",
      "emi_start_date": null,
      "emi_end_date": null,
      "insurance_company_id": "0",
      "insurance_year": "0",
      "insurance_month": "0",
      "insurance_end_date": null,
      "created": "2019-06-22 14:13:01",
      "modified": "2019-06-22 14:17:07",
      "Product": {
        "id": "17",
        "category_id": "6",
        "brand_id": "1",
        "product_code": "Samsung LED TV 39 inch",
        "name": "Samsung LED TV 39 inch",
        "selling_price": "13000",
        "short_description": "Television",
        "image": "catalog\/sam39.jpg",
        "status": "1",
        "created": "2019-05-14 00:00:00",
        "modified": "2019-05-14 00:00:00"
      }
    },
    {
      "id": "1",
      "user_id": "17",
      "category_id": "6",
      "brand_id": "1",
      "product_id": "17",
      "date_of_purchase": "2019-06-22",
      "seller_id": "1",
      "warranty_year": "0",
      "warranty_month": "0",
      "warranty_end_date": null,
      "purchese_price": null,
      "bill_upload": "",
      "emi_year": "0",
      "emi_month": "0",
      "emi_start_date": null,
      "emi_end_date": null,
      "insurance_company_id": "0",
      "insurance_year": "0",
      "insurance_month": "0",
      "insurance_end_date": null,
      "created": "2019-06-22 14:13:01",
      "modified": "2019-06-22 14:17:07",
      "Product": {
        "id": "17",
        "category_id": "6",
        "brand_id": "1",
        "product_code": "Samsung LED TV 39 inch",
        "name": "Samsung LED TV 39 inch",
        "selling_price": "13000",
        "short_description": "Television",
        "image": "catalog\/sam39.jpg",
        "status": "1",
        "created": "2019-05-14 00:00:00",
        "modified": "2019-05-14 00:00:00"
      }
    }
  ]
}]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...