Я должен создать REST API для мобильного бэкэнда, используя CakePHP. После следования инструкциям Вот Мне удалось настроить требования для создания REST API. Проблема в том, что я получаю null
в моем выводе, когда я использую _serialize
переменная. Вот мой код:
class InvitationController extends AppController {
public $components = array('RequestHandler');
public function index() {
}
public function add() {
if ($this->request->is('post')) {
$this->loadModel('Organizer');
$numPeople = $this->request->data['numpeople'];
$share = $this->request->data['myshare'];
$organizer = $this->request->data['organizer'];
$organizerMobile = $this->request->data['organizermobile'];
$this->set('organizerMobile', $organizerMobile);
$deadline = $this->request->data['deadline'];
$links = array();
date_default_timezone_set("Asia/Calcutta");
$now = date('Y-m-d');
$lastOrganizer = $this->Organizer->find('first', array(
'order' => array('Organizer.id' => 'desc')
));
$checkOrganizer = $this->getOrganizerDetails($lastOrganizer);
$pass = //something;// save data in organizers table
$this->organizer->create();
$this->organizer->save(
array(
'name' => $organizer,
'mobile' => $organizerMobile,
'p_id' => 1,
'share' => $share,
'deadline' => $deadline,
'password' => $pass,
'group_cardinality' => $numPeople,
'created_on' => $now,
)
);
$message = 1;
$this->set(array(
'message' => $message,
'_serialize' => array($message)
));
}
}
}
Когда я делаю запрос POST /invitation.json
я получил null
в выходе со статусом 200
, С другой стороны, если я просто сделаю echo json_encode($message)
в Controller
или в View
Я получаю правильный вывод. Я думаю, что я делаю что-то не так. Пожалуйста помоги!
Это неверно:
'_serialize' => array($message)
Обрати внимание на руководство, это правильно показывает в приведенных примерах.
'_serialize' => array('message')
Других решений пока нет …