Соединение с файлом (например, PDF) в рамках представления CakePHP

Вы можете перебирать obj любым способом, который вам нравится (здесь я использовал Object.keys , чтобы получить массив ключей от объекта obj и ]. forEach перебирать их) и обновлять поле. Это может быть достигнуто в одной строке кода:

const channels = [
  {name: "mega", status: true},
  {name: "ant", status: false},
  {name: "apl", status: true}
];

const obj = {
  "0": false,
  "1": true
};

Object.keys(obj).forEach((item, i) => channels[i].status = obj[i]);

/**
 * If "channels" array is NOT ALWAYS longer than the amount of "obj" properties,
 * you should add the check for existence, the simpliest one is implemented below:
 * 
 * Object.keys(obj).forEach((item, i) => channels[i] ? channels[i].status = obj[i] : null);
 */
console.log(channels);

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

7
задан Daniel Wright 30 March 2010 в 14:38
поделиться

6 ответов

$html->link('Pdf', '/files/myfile.pdf');
17
ответ дан 6 December 2019 в 05:56
поделиться

или...

<a href="<?php echo $html->url('/files/somefile.pdf'); ?>">Link Text</a>
0
ответ дан 6 December 2019 в 05:56
поделиться

или..

<a href="<?php echo $this->webroot; ?>files/somefile.pdf">Link Text</a>

:)

1
ответ дан 6 December 2019 в 05:56
поделиться

Я не уверен, что понимаю вопрос правильно, но здесь идет. В основном любой файл, Вы вставляете webroot папку, будет доступен на веб-сервере, поэтому при помещении файла в webroot/files/file.pdf, Вы просто связались бы с /files/file.pdf.

Если это не работает, разъясните свой вопрос...

1
ответ дан 6 December 2019 в 05:56
поделиться

Я могу подтвердить, что это проблема, когда mod_rewrite не используется.

<?php echo $html->link('pdf', '/files/test.pdf'); ?>

выводит

<a href="/pathtoapp/index.php/files/test.pdf">pdf</a>

он должен выводить

<a href="/pathtoapp/app/webroot/files/test.pdf">pdf</a>
4
ответ дан 6 December 2019 в 05:56
поделиться

Это должно работать

<?php echo $html->link('pdf', $this->webroot('files'.DS.'test.pdf'); ?>
2
ответ дан 6 December 2019 в 05:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: