Channel in discord.py in bestimmter Kategorie erstellen?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet
Woher ich das weiß:Recherche
ichmagpommes910 
Fragesteller
 29.08.2021, 23:01

Vielen Dank. Ich hab echt nichts gefunden...

0
FlipperLP  30.08.2021, 17:57
@ichmagpommes910

Ohne gescheite Anleitung kann man das Produkt nicht bedienen. Das ist nicht wahrer als wie beim Coden. Ohne Dokumentation musst du das ganze Paket auswendig können, das quasi unmöglich ist.

1
Joraph  11.09.2021, 10:02
@FlipperLP

Also ich benutze keine Dokumentation und es läuft super.

0
FlipperLP  12.09.2021, 18:32
@Joraph

kannst es ja auch googeln.. aber spätestens bei einem update der dependency fliegst hin.

0
ichmagpommes910 
Fragesteller
 30.08.2021, 19:19

Ich muss dich jetzt nochmal um Rat fragen... Ich habe jetzt geschrieben:

await ctx.guild.create_text_channel(name='Baum', overwrites=None, category='Baum')

Allerdings bekomme ich die Fehlermeldung:

discord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: 'str' object has no attribute 'id'

Ich bin noch ziemlich neu in Python. Ich habe auch schon einiges mit category=id(kategorie ID) oder so ähnlich ausprobiert, doch nichts funktioniert... Wüsstest du eventuell wie man das beheben kann?

0
FlipperLP  30.08.2021, 20:43
@ichmagpommes910

Ich bin kein Python dev, sondern Node.JS.

Aber ich versuchs trozdem mal:
In der Doku steht

category (Optional[CategoryChannel]) – The category to place the newly created channel under. The permissions will be automatically synced to category if no overwrites are provided.

Dort kannst du auch auf "CategoryChannel" drücken und du bekommst angezeigt, was es denn genau ist, was er denn da erwartet.

Im Endeffekt kann ich mir verstellen, dass du erst das CategoryChannel Objekt brauchst und dann das an der stelle, einfach mitgibst.

Wenn ich mir die Fehlermeldung so ansehe "''str' object has no attribute 'id'" dann verstehe ich drunter, dass du einen String mitgegeben hast, er allerdings ein Objekt mit dem Attribut "id" erwartet.

Notfalls, schau nochmal auf Stack Overflow oder schau dir ein Tutorial an.

0
Dieser Code sollte helfen. Bei mir ging er auch.

category = discord.utils.get(client.guild.categories, id=ID)
await guild.create_text_channel(f"Name Textchannel", category=category, reason=None)

LG JoraphRL
Woher ich das weiß:eigene Erfahrung
Joraph  11.09.2021, 10:12

Sry, musste es 2mal noch bearbeiten, da ich vergessen hatte, dass du auf eine vorhandene Kategorie zugreifen willst.

0

Guck mal in den discord.py.docs nach dort sieht man es.

LG

ichmagpommes910 
Fragesteller
 02.09.2021, 14:29

Ich verstehe allerdings nicht so ganz was die dann von mir wollen. Es scheitert daran das id als datentyp erwartet wird aber es komischerweise immer nur str ist.

0
ichmagpommes910 
Fragesteller
 02.09.2021, 14:33

Ne warte mal. das stimmt jetzt nicht ich brauche der/die/das Attribut id. Hab aber kp wie ich das machen soll

0