2011-09-14 2 views
0

파일을 업로드하고 여러 모델에 첨부하기 위해 cakephp 미디어 플러그인 (David Persson의 https://github.com/davidpersson/media)을 사용하고 싶습니다.Cakephp Media Plugin 어 테치먼트 테이블

첨부 파일에 BelongsTo 모델 A, 모델 B 등

모델 hasMany의 첨부

모델 B의 hasMany의 첨부 문서를 작업 할 수있는 Media.Coupler 위해서는

는 "기본 이름을"라고하고 "dirname"필드를 모델에 추가해야합니다. 내가 게시물 테이블에 basename과 dirname을 추가 할 때 작동하도록 플러그인을 얻을 수있다.

// Attachments 
var $hasMany = array('Attachment' => array( 
     'className' => 'Media.Attachment', 
     'foreignKey' => 'foreign_key', 
     'conditions' => array('Attachment.model' => 'Post', 'Attachment.group' => 'post'), 
     'dependent' => true, 
    ) 
); 

public $actsAs = array(
    'Media.Transfer', 
    'Media.Generator', 
    'Media.Coupler',  
); 

내가 설치 및 INITING 후 플러그인 데이터베이스에 새 테이블이 사용될 수 있습니다 첨부 파일을 호출 한 것으로 나타났습니다하지만 데이터는 저장하지 않습니다 :

후 모델의 설정은? ??

CREATE TABLE `attachments` (
`id` int(10) NOT NULL AUTO_INCREMENT, 
`model` varchar(255) NOT NULL, 
`foreign_key` int(10) NOT NULL, 
`dirname` varchar(255) DEFAULT NULL, 
`basename` varchar(255) NOT NULL, 
`checksum` varchar(255) NOT NULL, 
`group` varchar(255) DEFAULT NULL, 
`alternative` varchar(50) DEFAULT NULL, 
`created` datetime DEFAULT NULL, 
`modified` datetime DEFAULT NULL, 
PRIMARY KEY (`id`) 
) ENGINE=MyISAM; 

첨부 파일이 필요한 모든 모델에 기본 이름과 dirname을 추가하지 않을 것입니다.

업로드를 첨부 파일 테이블에 저장하고 model + foreign_key를 통해 링크하도록 미디어 플러그인을 구성 할 수 있습니까?

미디어 플러그인과이 종류의 설치에 성공한 사람이 있습니까?

답변

0

나는 약간의 차이와 함께, 당신과 같은 비슷한 상황에있어 : ​​

· 모델 hasOne의 첨부

· 모델 B hasOne의 첨부

· 그리고 난 노력하고있어 jquery Fileuploader 플러그인을 사용하려면 this tutorial

글쎄, 내 질문에 대한 대답은 YES라고 생각합니다. 이 플러그인으로 내 머리를 부러 뜨리면 ... A 또는 B 모델에베이스 이름과 dirname을 추가하는 것을 피할 수 있습니다. 커플러를 사용하지 마십시오. 나는 그것이 유일한 기능이라고 생각한다. 확실하지는 않지만 ... 그것은 나에게 확실한 문제를 안겨줬다.

게시물을 만들 때 수동으로 모델 및 foreign_key 필드를 첨부 파일 모델에 추가합니다.

당신은 내가 당신에게 내 이메일을 줄 수있는 더 많은 정보가 필요하면

,

환호

관련 문제