2011-09-14 3 views
0

Я хотел бы использовать плагин cakephp media (https://github.com/davidpersson/media от David Persson) для загрузки файлов и прикрепления их к нескольким моделям.Cakephp Media Plugin Attachments Table

Attachment BelongsTo Model A, модель B и т.д.

Модель A 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; 

Я предпочел бы не добавить имя файла и имя-каталога для всех моих моделей, которые нуждаются вложения.

Возможно ли настроить плагин для мультимедиа для сохранения загрузок в таблицу вложений и связать их с помощью модели + foreign_key?

Неужели кто-нибудь преуспел в использовании медиа-плагина и такого рода настройках?

ответ

0

Я нахожусь в подобной ситуации, как вы, с небольшой разницей:

· Модель A HasOne Вложения

· Модель B HasOne Вложения

· И я пытаюсь использовать плагин jquery Fileuploader после this tutorial

Ну, я думаю, что ответ на ваш вопрос: ДА, после ломаю голову с помощью этого плагина ... Вы можете избежать добавления базового имени и dirname в свою модель A или B, просто не используйте соединитель. Я думаю, что это единственная функция, хотя я не уверен ... это только дало мне проблемы, я уверен.

Что я делаю, вручную добавляю поля модели и foreign_key к модели вложения при создании сообщения.

Если вам нужно больше информации я могу дать вам мою электронную почту,

веселит