@DefaultCR

Как вывести данные с массива?

При попытке вывести список учатсников, выходит undefined. Хочу узнать у людей, как получать userID с базы данных правильно
async run(message, args) {
    let toClanNName = args[0]
        let clanTable = await Clan.findOne({ guildID: message.guild.id, clanName: toClanNName });
        if(!clanTable) return(message.reply("Такого клана нету!"));
        const rank = clanTable.members.userRank;
        const id = clanTable.members.userID;
        console.log(rank, id);
        let embed = new MessageEmbed()
        let ow = bot.users.cache.find(u => u.id === clanTable.owner)
            embed.setTitle(`Информация о клане ${clanTable.clanName}`)
            embed.setDescription(`Описание: ${clanTable.clanBIO}`)
            embed.addField("Общее", `∙ Владелец › ${ow}\n∙ Участников › ${clanTable.members.length}/15`)
            embed.addField("Участники", `${clanTable.members.userID}`, true)
            embed.setColor("#36393E")
            message.channel.send(embed)
        
    }

Данные с mongodb:

RthTy.png
  • Вопрос задан
  • 197 просмотров
Решения вопроса 1
@dispache
У тебя members это массив. Ты у массива вызываешь userrank и userid, поэтому undefined.
Чтобы первого получить :
const rank = clanTable.members[0].userRank;
const id = clanTable.members[0].userID;

Для вывода всех значение нужно по этому массиву пробегаться (foreach, for, ...)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы