示例#1
0
 async def get_subalias_named(self, ctx, name):
     alias = await ctx.bot.mdb.workshop_aliases.find_one(
         {"parent_id": self.id, "name": name}
     )
     if alias is None:
         raise CollectableNotFound()
     return WorkshopAlias.from_dict(alias, collection=self._collection, parent=self)
示例#2
0
    async def from_id(cls, ctx, _id, collection=None, parent=None):
        if not isinstance(_id, ObjectId):
            _id = ObjectId(_id)

        raw = await ctx.bot.mdb.workshop_aliases.find_one({"_id": _id})
        if raw is None:
            raise CollectableNotFound()
        return cls.from_dict(raw, collection, parent)
示例#3
0
    async def from_id(cls, ctx, _id, collection=None):
        if not isinstance(_id, ObjectId):
            _id = ObjectId(_id)

        raw = await ctx.bot.mdb.workshop_snippets.find_one({"_id": _id})
        if raw is None:
            raise CollectableNotFound()

        versions = [CodeVersion.from_dict(cv) for cv in raw['versions']]
        entitlements = [RequiredEntitlement.from_dict(ent) for ent in raw['entitlements']]
        return cls(raw['_id'], raw['name'], raw['code'], versions, raw['docs'], entitlements,
                   raw['collection_id'], collection)