有没有办法从sphinx .rst文件中的python字典创建表?

时间:2019-05-13 13:44:43

标签: python python-sphinx restructuredtext documentation-generation

我的python代码中有一个字典,其中包含语言代码和名称:{'eng':英语,'ger':德语,....}。我已经在我的sphinx conf.py文件中创建了与此字典等效的变量,并且我想使用该变量并在sphinx文档中将其显示为带有2列的表:代码,名称。 我正在使用csv表显示数据。

我试图将键和值连接到一个字符串中,并显示不带表,但是换行出现了问题。

有人可以帮我解决这个问题吗?

下面的一些代码:

在constants.py

import * as global from '../../global';
import getFields from './field-defs';
import db from '../../dexie_DB'

let g_fieldsets = [];

async function readFieldsets(fsetKey){
fsetKey = fsetKey+'_offers'
let res;
const userSets = await db.fieldsets.get(fsetKey);
if(!userSets || userSets.v !== 
process.env.REACT_APP_OFFERS_FIELDSET_VERSION){
    const defaultSets = [{
        name: 'Все поля',
        favourite: true,
        data:getFields().map((it,i)=>({
                name:it.name,
                hidden: false,}))
    },];
    res = defaultSets
    console.log(fsetKey,defaultSets)
    console.log('1')
    console.log(db)
    db.fieldsets.put({
        user: fsetKey,
        v:process.env.REACT_APP_OFFERS_FIELDSET_VERSION,
        data: defaultSets
    })
}else{
    res = userSets.data
}
g_fieldsets = res.map(it=>({
    ...it,
    data:it.data.map(item=>({
        ...item,
        def: getFields().find(def=> item.name===def.name)
    }))
}))
global.events.fieldsetsUpdated.next(null)
}

global.currentUser.subscribe(u=>{
if(u){
    readFieldsets(u.login)
}else{
    g_fieldsets = []
}
})

export function getFieldsets(force){
if(force || !g_fieldsets.length){
    if(!global.currentUser.getValue()){
        return [];
    }
    let _ = (readFieldsets(global.currentUser.getValue().login))
}
return g_fieldsets;
}

export function validate(name, it){
return {
    valid: null,
    msg: null
};
}

export function isEntityValid(it){
if(!it){
    return false
}if(!it.supplierId || !it.supplierId.length){
    return false
}if(!it.amount || it.amount<0){
    return false
}if(!it.offeredPrice || it.offeredPrice<0){
    return false
}
return true;
}

在conf.py

 LANGS = {
    'eng': 'en',
    'ger': 'de',
    'fra': 'fr',
    'spa': 'es',
    'ita': 'it',
    'por': 'pt',
    'gre': 'el',
....
}

0 个答案:

没有答案