Предельная категория transclusion при использовании динамично сгенерированных категорий в MediaWiki

Для достижения обеих ваших целей вы можете включить код в файл app.js. App.js запускается только при запуске экспресс-сервера. Не обновляется при обновлении страницы. Вы можете запустить app.listen после окончания чтения.

var myMap = {};

fs.createReadStream('filename.csv')  
  .pipe(csv())
  .on('data', (row) => {
    // Build javascript object
    myMap[row['key']] = row['value'];
  })
  .on('end', () => {
    app.listen(port, () => console.log(`Example app listening on port ${port}!`));
  });

Однако, поскольку я не думаю, что у вас будет много данных, лучше использовать синхронные (блокирующие) методы как для парсера csv, так и для чтения файлов. Это просто облегчает понимание. Я использую csv-parse ниже.

const express = require('express')
const fs = require('fs')
const parse = require('csv-parse/lib/sync')

const app = express()
const port = 3000

/* In this example assume myMap will be
/ `
/ "key_1","key_2"
/ "value 1","value 2"
/ `
*/
var myMap = fs.readFileSync('sample.csv', 'utf8');

/* parsing the csv will return:
/  [Object {key_1: "value 1", key_2: "value 2"}]
*/
const records = parse(myMap, {
  columns: true,
  skip_empty_lines: true
})

app.get('/', (req, res) => res.send('Hello World!' + records[0].key_1))
app.listen(port, () => console.log(`Example app listening on port ${port}!`))

протестировать его на runkit

6
задан OverloadUT 5 March 2009 в 00:22
поделиться

1 ответ

Если я понимаю правильно, Вы хотите ограничить includeonly информацию (категория) только на глубину 1 transclusion. Я не думаю, что это возможно.

Возможные решения:

1-не помещают информацию о категории в Template:Food. Просто поместите его непосредственно в каждую страницу компонента или если Вы действительно должны, создать a Template:Food_category или подобный. Затем каждая страница могла иметь любое количество {{Food}}s и {{food category}}s должен был бы быть явно помещен.

3
ответ дан 17 December 2019 в 18:20
поделиться
Другие вопросы по тегам:

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