CakePHP 프레임 워크에서 개인 메시징 시스템을 작성하는 사람이 누구인지 궁금합니다. 나는 페이스 북의받은 편지함 시스템과 비슷한 것을 목표로하고있다. 물론 복잡하지 않아야합니다!CakePHP 개인 메시징 시스템
현재 로그온 할 수있는 사용자가있는 AUTH 시스템이 있습니다.
CakePHP 프레임 워크에서 개인 메시징 시스템을 작성하는 사람이 누구인지 궁금합니다. 나는 페이스 북의받은 편지함 시스템과 비슷한 것을 목표로하고있다. 물론 복잡하지 않아야합니다!CakePHP 개인 메시징 시스템
현재 로그온 할 수있는 사용자가있는 AUTH 시스템이 있습니다.
가장 간단한 방법은 바로, 적어도 다섯 개의 열에서와 messages
데이터베이스 테이블을 작성하는 것입니다 : id
, sender_id
, recipient_id
, subject
, body
. 그런 다음 원하는 다른 열 (예 : created
)을 추가 할 수 있습니다.
<?php
class MessagesController extends AppController {
public function inbox() {
$messages = $this->Message->find('all', array(
'conditions' => array(
'recipient_id' => $this->Auth->user('id')
)
));
}
public function outbox() {
$messages = $this->Message->find('all', array(
'conditions' => array(
'sender_id' => $this->Auth->user('id')
)
));
}
public function compose() {
if ($this->request->is('post')) {
$this->request->data['Message']['sender_id'] = $this->Auth->user('id');
if ($this->Message->save($this->request->data)) {
$this->Session->setFlash('Message successfully sent.');
$this->redirect(array('action' => 'outbox'));
}
}
}
}
은 확실히 당신이 예제를 구체화하고, 응용 프로그램에 적용되지 않을 수도 있습니다 아무것도 변경해야합니다 다음과 같이 그런 다음 컨트롤러를 설정할 수 있습니다
. 또한 사용자가 원하는 경우 메시지를 보내려는 사람과 친구 인 경우 수표를 추가해야합니다.
난 내 사용자 컨트롤러에 모든 기능을 가하고 사용자 컨트롤러를 사용하도록 생각하고 있었는데 메시징 테이블 어느 쪽이 더 효과적일까요? – user1436497
일반적으로 모델 당 컨트롤러를 사용하는 것이 가장 좋습니다. 'messages' 데이터베이스 테이블, 그리고 그러므로'Message' 모델과 상호 작용할 때, 일반적으로 메시지를 생성, 읽기, 업데이트 및 삭제 (CRUD)하는 메소드를 포함하는 상응하는'MessagesController' 클래스를 생성합니다. 그런 다음 필요에 따라 CakePHP의 라우팅 구성 요소를 사용하여 경로를 변경할 수 있습니다. –
왜 모두 downvoting이 .. 내가 코드를 물어 보는 것 같지 않아, 난 그냥 올바른 방향으로 지적하고 싶어 ... – user1436497