CakePHP установить поле в этом- > данные в связанное поле в базе данных


Я пытаюсь загрузить несколько изображений с помощью meioupload, который отлично работает, если я устанавливаю изображение.1.поле, а затем изображение.2.поле для каждого поля данных. Затем перебрать и создать/сохранить, а не ловушек волокнистой массы.

Моя проблема возникает, когда у меня есть поле, которое используется в качестве подпапки для изображения в папке images. например, у меня есть форма

Изображение.1.код продукта изображение.1.художник изображение.1.файл для загрузки изображение.2.код продукта изображение.2.художник изображение.1.файл для загрузки

Теперь, когда элементы сохраняются, все данные верны, включая отношение принадлежности идентификатора продукта, за исключением того, что второе изображение хранится в неправильном месте. Первое изображение хранится в файле images / image.1.исполнитель / файл второе изображение хранится в файле images / image.1.художник / образ.2.исполнитель / файл

Это крайне раздражает,и это просто связано с тем, как поведение meioupload устанавливает подпапку в качестве поля из массива.

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

Таким образом, решение может заключаться в том, чтобы просто установить второе поле исполнителя пустым и добавить только несколько изображений для одного и того же исполнителя..

Или установить поле данных художника на фактическое поле художника в соответствующем продукте, к которому будет принадлежать изображение, но я не могу заставить это работать?

Итак, вопрос в том, как я могу установите значение этого поля в соответствующее поле Products artist, которое уже есть в базе данных для каждого отдельного create / save?

ПС. Мне жаль, если это немного затянулось.

1 2

1 ответ:

Итак, проблема возникла потому, что я отправлял $this->data в виде 2 массивов. Решение состояло в том, чтобы прочитать это->изображение->продукт - > поле ("художник") и установить его в это->данные ["изображение"] [1] ["художник"].

Таким образом, он устанавливает поле в первом массиве в artist, который в этом конкретном поведении meioupload будет переходить ко второму массиву данных и, следовательно, загрузка изображения (которая затем будет иметь суффикс a /) это позволяет мне загружать изображения в соответствующий каталог artist, пока они не будут загружены. создание 3 миниатюр и сохранение связей, информации о файле и так далее.

Я обнаружил, что это, кажется, не имеет значения для загрузки изображений (изображения работают нормально, даже если код отображения фактически имеет два / в нем, потому что второе изображение будет сохранено в базе данных как /dir / artist/ как поза к первому, который сохранен /dir / artist)

Если у кого-то есть гениальный способ вызвать meioupload по одному, то это, надеюсь, позволит избежать этой небольшой проблемы, а затем и больше и еще больше изображений можно было бы добавить в ту же форму..увы, я еще недостаточно умен, чтобы знать, как это сделать.. Любая помощь будет очень признательна!!!!