#Allgemeine Hilfe
1 messages · Page 12 of 1
aber das ist ja wieder was anderes
können wir call machen dann kann ich dir es besser erklären(also veruschen)
Ne, einen wo man auswählen kann ob für sich selbst oder für wen anders auf dem Server
entweder man macht nichts: für dich selber oder , du gibst einen user an: info für den user, richtig?
Korrekt
meinst du mich?
ja
Hab das mit einem Option gemacht und wenn das None ist dann halt normale userinfo passt das erstmal?
jetzt grad leider nicht später also in ner stunde oder so
hast du vlt schon nh idee was man machen könnte
dann:
if user is none:
user = ctx.author
#dein code
ich hätte da so nh idee
so einfach ist das
dann user.created_at und sowas darein oder wie geht das mit der Variable
genau
ja so ist es schon richtig
Und wenn der User wer anders ist als ich selbst
mit user.create_at
ne user ist der den du ausgewählt hast
nciht der ctx.author
kannst du mir das vlt kurz erklären ich hab mir auch schon was überlegt aber ich weiß nicht wie ich es umsetzen kann oder ob es überhaupt geht
Wait wait wait
Also
if user = none:
#userinfofürmichselbst
aber ich kapier den Part danach nicht, wie definier ich user wenn das irgendwer ist?
Mit der Id?
- du fügst dein bild in eine variable ein
- du nimmst das bild und nimmst es als embed bild
- du schickst das embed und änderst das bild zu dem nächtem bild
- du veränderst deine alte nachricht mit dem embed wo du gerade das bild veränderst hast
- das wiederholst du dann so weit bist das spiel zu ende ist (du musst jedes mal das bild vom embed wieder erneuern)
wenn user none ist dann setzt du user auf den ctx.author: user bist dann du
ich mein wenn user eben nicht none ist
dann hast du den user dann angegeben und dann gibst du einf die infos zu DEM user zurück
verstanden?
verstanden was ich meine?
Ne nicht wirklich
kannst du vllt ein Code-Beispiel geben?
Diese Zeile ist in der callback methode einer Modal Klasse.
Jetzt möchte ich hier sagen view=CategoryView was natürlich auf eine andere View klasse zugreift. Da kommt dann ein Fehler. Gibt es da irgendeine Möglichkeit das zu machen?
nee irgendwie nicht
@bot.slash_command()
async def userinfo(ctx, user: Option(discord.Member)):
if user is none:
user = ctx.author
embed = discord.Embed()
#dein zeug
hast du self als parameter in deiner callback methode?
ich glaub call ist besser
ja habe ich

Soweit war ich schon.
Ich meine was man macht, wenn ich einen User ausgewählt habe. Wie zeige ich von diesem User z.B. den avatar an
kannst du mal die klasse reinschicken?
warte jetzt hab ichs verstanden glaube ich glaibe du hast die selbe idee wie ich
aber man muss doch trotzdem die url abrufen oder?
kann ich jetzt hier bei await shop.send() auf die CategoryView Klasse unten zugreifen?
ja also wenn ich einfach view=CategoryView mache
Models are classes that are received from Discord and are not meant to be created by the user of the library. Attributes key, url. Methods def is_animated, async read, def replace, async save, def ...
ja?
und das geht automatisch ?
Muss ich unter if noch nen else machen und dann user.avatar und so ins else reinschreiben?
ne
schick den fehler mal als text rein
jo
Traceback (most recent call last):
File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\modal.py", line 341, in dispatch
await value.callback(interaction)
File "c:\workspace\python\Discord Bots\Marketplace\main.py", line 56, in callback
await shop.send("Select a category", view=CategoryView)
File "C:\Users\aange\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\abc.py", line 1550, in send
components = view.to_components()
TypeError: View.to_components() missing 1 required positional argument: 'self'```
ich denke das könnte damit zutun haben, dass ich auf die CategoryView Klasse in der callback methode der ShopModal Klasse zugreife
aber ich weiß nicht
user.avatar
oh
||ich nutz noch discord.py||
probier mal bei shop = self.
also shop = await self. und dann der rest
discord.py ist ein ganz anderes package
Das ist wohl das problem
Danke für die Hilfe schonmal
ja
danke für den keks
also mach in deiner konsole
pip uninstall discord.py
pip install py-cord
Aber dann funzt mein anderes Zeug nicht mehr
oder
was ist auf der zeile darüber
ich glaub die sind ähnlich
aber ich glaub es guntz trozdem nicht
musst du halt gucken
kanns ja wieder uninstallen
udn sonst guckst du dir tutorials über discord.py an
ja natürlich
Geht alles mit Option nicht mehr bei mir
ich kenn mich mit discord.py nicht aus
Traceback (most recent call last):
File "c:\Users\ich\Downloads\Files\BOT\main.py", line 4, in <module>
from discord.commands import slash_command
mein bot kann seit ich pycord installiert hab (habs wieder deinstalliert und es geht trotzdem nicht)
irgendwie nix mehr importieren... weiß wer wieso?
@paper iris ich kann jetzt talk
code??
welche ide nutzt du
#🔍・pycord-help
ich ess gerade
okay ich warte
VS code
hast du die python extension installiert?
ne
jetzt kann ich
okay wo gehen wir hin
willst du privat call oder coding support?
is mir egal
lass #1020759567421931620
Wozu ist die Wichtig?
ah ne hab die schon installiert lol
damit die module importiert weraen können
das hat nichts damit zu tun...
bei mir schon
from discord.ext.commands import slash_command
@lofty haven
Versuch ich nacher Danke
sollte eigentlich from discord.commands import slash_commands sein
das ist bei dir irwas falsch gelaufen
kann sain
.
Ist es möglich, wenn man ein Modal absendet ein neues Modal zu öffnen? Wenn ja, wie funktioniert das?
Bzw. wie öffnet man dann dieses.
nein, das geht nicht. du müsstest dann bei modal 1 eine antwort nachricht mit einem button senden, und wenn man auf den button klickt öffnet sich das zweite modal
Ohaa kann jemand so was coden ?
Oder den Code für Easy Pillow schicken?
Mit Bilder?
?
Wie wurde das Bild gecodet?
Mach mal ne gif Animation Dafür
ne das geht leider nicht
es soll ja ein spiel werden
Habs jetzt versucht indem ich zwei Variablen im Command noch eingebe, aber zeigt jedes Mal an 'Die Anwendung reagiert nicht'.
Dochhh geht alles 🙃
wtf xD
ja es geht schon aber das ergibt gar kein sinn (also nicht falsch verstehen jetzt)
Doch sieht cleaner aus :)
Also eher so das sich die Karten aufdecken
achso meinst du das ja das will ich ja alles machen
aber es muss erstmal gehen
bevor ich es erweitern kann
Ah okay wäre cool wenn du es in #1027677692730036294 reintun könntest
Paar frame animation wäre cool
Wenn du mir nochmal erläuterst was nicht geht dann würde ich dir helfen 🫠
ich glaub mir ist nicht mehr zu helfen xd aber gerne
Würde mir Button Arbeit und if
also ich hab ein embed mit einem tisch bild das schicke ich in den channel
und dann will ich eine random karte drauf editieren
dann die nächste ….
Leute, das ist Allgemeine Hilfe, kein Smalltalk.
Ihr müllt damit den Chat nur minimal zu..
Mein Code ist inzwischen wieder oben..
Und das Problem ist welches?
bis das spiel zu ende ist
Ist das nicht der Sinn vom Channel
ja..
.
Gibt es an dem Code an sich nen Fehler?
Nein, kein Fehler.
neija das ich ja eine url vom neuen bild brauche
Ich glaube das liegt an dem Übergeben der Variablen vom Command and das Modal.
ich meine es hört sich so easy an aber es is so schwer
ich meine im Grunde genommen soll einfach nur auf das selbe embed auf das image noch ein image
Kannst sie auf imgbb oder so hochladen oder du aktualisierst die files und lädst es dann quasi lokal ins Embed (noch nie ausprobiert ob es klappt aber Probier es mal)
https://youtu.be/iLv_iwFq2Zo quasi das nur mit Edit
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus diesem Video
► https://media.tenor.com/epNMHGvRyHcAAAAd/gigachad-chad.gif
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Mein Hosting* ► https://tidd.ly/3gJufg6
Code auf Github ► https://github.com/tibue99/tutorial-bot
PYCORD
Docs ► https://docs.pycord.dev/
Guide ► https://guide.pycord.dev/introduction/
D...
Um was geht’s?
ja das versuche ich grad
Also was geht da nicht
#1019974414487535736 message
Ich versuche aus dem Command zwei Variablen an das Modal zu übergeben.
Wenn ich den Command /spotify ausführe, passiert nix. Kein Fehler, nix.
Ansonsten halt hochladen in nem Image Hoster oder auf deinem Server ne api starten die das managed
Interessant leider noch keine blob
Hast du schon mit nem Print geschaut ob der Command an sich ausgeführt wird
Habs glaube behoben, teste es gerade
Whut?
Oder so 👍🏻
Würde es mit blob machen in der Datenbank aber leider gibt es keine Guide dazu wie ich blob als embed schicken kann

Geht das überhaupt
Joa sollte gehen
@slash_command(description='Warn a User', aliases=['Warn'])
async def warn(
self,
interaction: discord.Interaction,
user: Option(discord.Member),
reason: Option(required=None, default='None')
):
warn = await self.get_warn(interaction.guild.id, interaction.user.id)
await interaction.response.defer()
await asyncio.sleep(1)
try:
async with aiosqlite.connect(self.DB) as db:
await db.execute("UPDATE warn SET warns = warns + 1 WHERE guild_id = ? AND user_id = ?", (interaction.guild.id, interaction.user.id))
await db.commit()
embed = discord.Embed(
title=f'Warned {user.name}!',
description=f"Moderator: {interaction.user.mention}\n"
f"Warned User: {user.mention}\n"
f"ID: {user.id}\n"
f"Warn Reason: **{reason}**\n"
f"Current Warns: **{warn+1}**",
color=discord.Color.blue(),
timestamp=datetime.now()
)
await interaction.followup.send(embed=embed)
Ich krieg kein Fehler aber der User wird nicht gewarnt
wieso hast du kein except bei deinem try block
hab ich
except:
em1 = discord.Embed(
title=f'Error',
description=f'`MISSING_PERMISSION`',
color=discord.Color.red(),
timestamp=datetime.now()
)
await interaction.followup.send(embed=em1, ephemeral=True)
return
lass doch alle so programmieren wie sie möchten
achso das wollte ich noch machen
Weil ich es so schöner finde
also wird der user schon gewarnt, aber der warn counter wird nicht hochgezählt?

hey wegen deinem bild video ist es auch möglich das ich dann noch ein bild auf das bild setze also nachdem es abgeschickt wurde
Ja
du meinst du willst das bild ändern?
Denke du musst es editen

nein nicht ändern das erste bild soll bleiben und dort soll noch eins oben drauf
oben drauf? also du willst die beiden bilder zu einem bild kombinieren?
achso, dass musst du mit einer image library machen, zb pillow
das weiß ich
die nachricht zu bearbeiten ist kein problem
ja das weiß ich auch xd
aber image ist schwer
also ich hab ein tisch und da will ich nach und nach karten drauf legen
joa, also am besten schaust du dir ein pillow tutorial dafür an
ahh okay ich schaue mal
Hab gedacht dir geht es nur darum :d
also ich weiß ja wie es bearbeitet wird und alles das ist ja easy
@slash_command(description='Warn a User', aliases=['Warn'])
async def warn(
self,
interaction: discord.Interaction,
user: Option(discord.Member),
reason: Option(required=None, default='None')
):
warn = await self.get_warn(interaction.guild.id, interaction.user.id)
await interaction.response.defer()
await asyncio.sleep(1)
try:
async with aiosqlite.connect(self.DB) as db:
await db.execute("UPDATE warn SET warns = warns + 1 WHERE guild_id = ? AND user_id = ?", (interaction.guild.id, user.id))
await db.commit()
embed = discord.Embed(
title=f'Warned {user.name}!',
description=f"Moderator: {interaction.user.mention}\n"
f"Warned User: {user.mention}\n"
f"ID: {user.id}\n"
f"Warn Reason: **{reason}**\n"
f"Current Warns: **{warn+1}**",
color=discord.Color.blue(),
timestamp=datetime.now()
)
await interaction.followup.send(embed=embed)
Ich krieg kein Fehler aber der User wird nicht gewarnt
ich weiß nur nicht wie es aktualisiert wird
nee es geht ums bild
Ähm du musst das Bild nochmals editen danach an embed schicken und es als Edit msg senden
Konntest du schon einen naricht mit dem ID schicken? (Pingen)
Ja
text is easy genau wie ein neues bild aber ein nicht vorhandenes bild da drauf kriegen wird schwierig
Hast einmal user.Id und das andere mal interaction.user.id
hier
ik beides geht nd
Und wie ist die Ablauf
der Ablauf*
Versuche mit Print um den Fehler zu finden
Musst du dann nicht 2x das gleiche haben? Hab gedacht das eine erstellt den Daten Satz das andere updatet ihn
nee das geht nicht
Warum nicht?
weil ich den url brauche
stimmt
Geht auch ohne
wie denn
Du kannst ein bild per bot ohne url schicken
Tibue hat dazu mal ein Guide gemacht
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus diesem Video
► https://media.tenor.com/epNMHGvRyHcAAAAd/gigachad-chad.gif
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Mein Hosting* ► https://tidd.ly/3gJufg6
Code auf Github ► https://github.com/tibue99/tutorial-bot
PYCORD
Docs ► https://docs.pycord.dev/
Guide ► https://guide.pycord.dev/introduction/
D...
ja aber das bild existiert doch nicht mal das muss der bot selber generieren
Klappt’s?
Der bot sendet ja das Standard bild danach bearbeitet er das Bild per path und schickt als Edit bild
Und abspeichern als temp?
Ignoring exception in command warn:
Traceback (most recent call last):
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 124, in wrapped
ret = await coro(arg)
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 976, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "c:\Users\juckt\Projects\big baba bubu bot\Commands\warn.py", line 36, in warn
warn = await self.get_warn(interaction.guild.id, user.id)
File "c:\Users\juckt\Projects\big baba bubu bot\Commands\warn.py", line 25, in get_warn
return result[0]
TypeError: 'NoneType' object is not subscriptable
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: TypeError: 'NoneType' object is not subscriptable
ja ich weiß leider nicht wie ich das machen soll
so hab ich es mir schon gedacht
Oder der bot nimmt das Bild url die es abgeschickt hat & bearbeitet nochmals
So als Beispiel
bruh
nice
neeee
Idk ob der bot den url dieses bild nehmen kann
-_-
Tibue weisst du es ob es möglich ist URL vom Bild aus discord zu bekommen per bot?
das will ich doch nicht mal
Du willst ja mit dem URL den bild bearbeiten und abschicken
das prinzip ist doch ganz einfach
Joa was bild in einem temp zu speichern für 100 user?

Wie hast du dir das vorgestellt? Jedes Bild Einzel abspeichern?
Du könntest es mit msg content Speichern
Oder über msg content das Bild bearbeiten und abschicken(Edit)
es soll ja aber im selben embed sein
Ik
und ich verstehe gar nicht was du meinst
Ich denke das Bild ist ja eine Art conntent
Sryyy schon mal für Werbung eines anderen ytber
https://youtu.be/pgmUBOV3IIs
Hey welcome back, Ben again! Today is a video about how to make a discord bot that is able to save images from chat! I learned how to do this as I'm trying to work on a project that will (hopefully) incorporate Tensorflow Object Detection into a discord bot. I couldn't find many great examples of how to do this, so I thought I'd make my own! The...
also nicht böse gemeint jetzt
ist das auch py-cord?
aber das ergibt doch gar kein sinn
Hey welcome back, Ben again! Today is a video about how to make a discord bot that is able to save images from chat! I learned how to do this as I'm trying to work on a project that will (hopefully) incorporate Tensorflow Object Detection into a discord bot. I couldn't find many great examples of how to do this, so I thought I'd make my own! The...
ich will ja nicht das bild speichern was ich schon habe
ja ich will das bild bearbeiten wie gesagt
Joa du kannst den bild doch direkt vom deine bot bearbeiten und abschicken (bearbeiten; edit)
hä ich verstehe gar nix mehr
I mean du speicherst ja deine Bilder in deine bot Ordner
Von dort holst du es raus um bearbeites es
hm, du musst wohl im code schauen welchen du doppelt benannt hast
der bot soll es ja aber bearbeiten automatisch
Ja kannst du auch machen
aber wie denn
Mit dein script das du deine Karte & bild als eine variable festlegst
kannst du mir bitte zeigen wie ich das machen könnte weil wie gesagt ich hab kp mehr
ich versuch das jetzt auch schon 3 Tage
Wichtig
Wenn ich richtig verstanden hab hast ja ein field
Und 13*4 Karten
Diese Karte soll gespeichert werden als Bild
Und bestimmt benannt wird wie zB heart-king.png
Im script soll es bild hollen vom Folder 📂 wo die Bilder gespeichert wird
Im Code machst du ein shufle def Funktion mit random Funktion wie zB Heart ect dann die Zahlen
Von ChatGPT
import numpy as np
from PIL import Image
import discord
from discord.ext import commands
class CardGamesCog(commands.Cog):
def __init__(self, bot):
self.bot = bot
# Erstelle eine Liste mit den möglichen Kartenwerten
card_values = ['2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K', 'A']
# Erstelle eine Liste mit den möglichen Kartenfarben
card_suits = ['Hearts', 'Spades', 'Clubs', 'Diamonds']
# Erstelle eine Funktion, die eine zufällige Karte zurückgibt
def get_random_card(self):
# Wähle zufällig einen Wert und eine Farbe aus
value = np.random.choice(self.card_values)
suit = np.random.choice(self.card_suits)
# Erstelle eine Karte als String
card = value + ' of ' + suit
# Lade das entsprechende Kartenbild
card_image = Image.open(f"{value}_{suit.lower()}.png")
return card, card_image
@commands.command()
async def blackjack(self, ctx):
# Dein Blackjack-Code hier
pass
@commands.command()
async def poker(self, ctx):
# Dein Poker-Code hier
pass
def setup(bot):
bot.add_cog(CardGamesCog(bot))
Brauchst du noch Hilfe
Irgendwas der beiden Argumente ist none
Also user oder interaction guild
hmmm
Lass dir am Anfang des Befehls dir mal die interaction.guild und den user printen
die datenbankabfrage liefert vlt einfach kein ergebnis zurück
Dann würde kein TypeError kommen
Bei beiden
print(interaction.guild)
print(user)
Ja
so geht aber auch oder
Und das führst du jetzt aus
1 sec

schick deine get_warn methode
beides richtig
async def get_warn(self, guild_id, user_id):
await self.check_user(guild_id, user_id)
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT warns FROM warn WHERE guild_id = ? AND user_id = ?", (guild_id, user_id)) as cursor:
result = await cursor.fetchone()
jo, db abfrage liefert kein ergebnis
bruh
schleich werbung
Benutzt den @devout orchid Bot

JUNGE SNIEX
Yeah
Er hat auch ein tolles warn System
👍
:>
danke für diesen coolen tipp! dieser tipp hat mein leben komplett zum positiven verändert 

und wie mach ich das >:
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus dem Video
SQL Bolt ► https://sqlbolt.com/
Deutsches SQL Tutorial ► https://www.imoodle.de/sqltutorial/index.html
DB Viewer ► https://sqlitebrowser.org/dl/
Code auf Github ► https://github.com/tibue99/tutorial-bot
Discord Developer Portal ► https://discord.com/developers/applications...
👍
SAG DOCH EINFACH WIE
und was ist mit dem check_user?
ICH SCHAU MIR DAS NICHT ZUM 3, AN
du müsst überprüfen ob ??? none ist
Danke tibu hat mir sehr geholfen
hast du geschrieben
The official video for “Never Gonna Give You Up” by Rick Astley
Taken from the album ‘Whenever You Need Somebody’ – deluxe 2CD and digital deluxe out 6th May 2022 Pre-order here – https://RickAstley.lnk.to/WYNS2022ID
“Never Gonna Give You Up” was a global smash on its release in July 1987, topping the charts in 25 countries including Rick’s nat...
du musst prüfen ob none zurückkommt in einer if bedingung

HEHEHEHA

🤣
if none :>
und wie genau?
und wo?
is steht für ist blöd 
???
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus dem Video
SQL Bolt ► https://sqlbolt.com/
Deutsches SQL Tutorial ► https://www.imoodle.de/sqltutorial/index.html
DB Viewer ► https://sqlitebrowser.org/dl/
Code auf Github ► https://github.com/tibue99/tutorial-bot
Discord Developer Portal ► https://discord.com/developers/applications...
Da
dieser command ist voll praktisch
....
Sniex kannst du einmal was sinnvolles machen
anstatt Emojis oder VIdeos zu schicken

Ich helfe da wo ich kann
Warum wenn ich es schon gesehen hab
Dann nochmal bist du es auswendig kannst
:<
das ist wie bei der fahrprüfung. wenn man nicht bestanden hat muss mans nochmal machen
junge
lieber machen if result == None weil das gut für wert Gleichheit, is seien nur gut für wenn 1:1 gleich
alles deinstallieren und neu setupen
ich glaube es ist andersrum, statt == sollte man lieber is benutzen
Nene
Woran soll ich denn sehen wo der fehler ist ich weiß nichtmal was der fehler ist
und das neu installieren

== Wertgleichheit
is Referenz Gleichheit
Also aus meiner Sicht lieber ==
interessant
Ich schicken Beispiel warte
mensch
alles machst du kaputt
weil easy_pil net python 3.11 unterstützt
hab dann das setup video von @solid ingot angeguckt aber interpreter will net xD
und bekomme immer den error das pip nicht gefunden wird
a = [5, 4, 3]
b = a
c = a[:]
a == b
true
a == c
true
a is b
true
a is c
false
wenn du das video nicht schauen magst schau dir einfach den code auf github an, da siehst du ja ein beispiel für die if bedingung
ah stimmt das musste ich auch schon schmerzlich erfahren
Du sagst mir ja nicht wo der fehler ist
a != c ?
deine datenbankabfrage liefert kein ergebnis zurück
dann ist false
das muss ich mir mal genauer anschauen danke
Man braucht für ne easy Library noch eine die es noch leichter macht? 
nicht frech werden 
hmmm
Früher hab ich auch immer is benutzt bis mir mal aufgefallen ist das der bot Sachen macht die er nicht soll dann hab ich es unter die Lupe genommen und das kam dabei raus
@solid ingot meinst du das?
if message.author.bot:
return
if not message.guild:
return
oder
if xp < 0:
return lvl
oder
if old_level == new_level:
return
if new_level == 2:
jz merkste selber
nein ich meine deine datenbankabfrage in der get_warn methode
return result[0]
```?
oder ```py
async def get_xp(self, user_id):
await self.check_user(user_id)
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT xp FROM users WHERE user_id = ?", (user_id,)) as cursor:
result = await cursor.fetchone()
Ich möchte dich jetzt nicht angreifen aber hast du dir bereits ein Video nur mit Python Basics angeschaut?
Jain
Solltest du nachholen weil das ist nichts anderes
if result:
return result[0]
else:
return False
Aber jetzt komm mir nicht mit @ProgrammierenLernen
und wo genau soll ich das denn hintragen
einfach unter get_warn
The Morpheus tutorial
Da wo aktuell dein return ist den einfach damit ersetzen
Der ist nen Knecht der erklärt komisch
Ja eben das hab ich dir ja schon vorhin versucht mitzuteilen
:<

Das hast du nämlich immernoch nicht geändert
doch
Da muss immernoch 2x das gleiche stehen
Ja ne beim letzten Teil was du geschickt hast nicht
Das was fett markiert ist
Das zählt ihn ja nicht hoch 🧐
Ja
So ist richtig aber du hast halt nirgendwo nen Punkt wo du die Daten insertest
Wahrscheinlich ist der User noch nicht in der Datenbank
aber der wird doch eingetragen
ah ne nvm
Ne nur selected bzw. geupdated
oh
Wenn nix da ist kann nix selected bzw geupdated werden
Würde ich bei der get warm Funktion einbauen
ich hab gerade keine ahnung kannst du mir sagen wie genau?
ich versprech dir ich schau mir dannach nochmal basics, etc an
Bin nicht am pc am Handy ist es mir zu umständlich
if result:
return result[0]
else:
#Dein Code zum Daten einfügen
return 0
Bin erst am Dienstag wieder zuhause
#Dein Code zum Daten einfügen aber wie füg ich das ein
Ist das nicht im Tutorial?
Mein Discord Server
► https://discord.gg/zfvbjTEzv6
Links aus dem Video
SQL Bolt ► https://sqlbolt.com/
Deutsches SQL Tutorial ► https://www.imoodle.de/sqltutorial/index.html
DB Viewer ► https://sqlitebrowser.org/dl/
Code auf Github ► https://github.com/tibue99/tutorial-bot
Discord Developer Portal ► https://discord.com/developers/applications...
Hä? 😂
Das mein ich
Ne reicht völlig aus wenn du es in get_warns machst wie ich es geschrieben habe
Einfach das alte was ich dir geschickt habe mit dem neuen ersetzen und den Kommentar durch den entsprechenden Code ersetzen
aber durch welchen code?
@solid ingot hab keine Lust mehr will fernseh schauen mach du ma Weiter am Handy schreiben ist anstrengend
await db.execute("INSERT OR IGNORE INTO warn (guild_id, user_id) VALUES (?, ?)", (guild_id, user_id))
```oder was
hab ich in meinem on_ready event
@commands.Cog.listener()
async def on_ready(self):
async with aiosqlite.connect(self.DB) as db:
await db.execute(
"""
CREATE TABLE IF NOT EXISTS warn (
guild_id INTEGER PRIMARY KEY,
user_id INTEGER,
warns INTEGER DEFAULT 0
)
"""
)
das hab ich
Ignoring exception in command warn:
Traceback (most recent call last):
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 124, in wrapped
ret = await coro(arg)
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 976, in _invoke
await self.callback(self.cog, ctx, **kwargs)
File "c:\Users\juckt\Projects\big baba bubu bot\Commands\warn.py", line 43, in warn
warn = await self.get_warn(interaction.guild.id, user.id)
File "c:\Users\juckt\Projects\big baba bubu bot\Commands\warn.py", line 28, in get_warn
await db.execute("INSERT OR IGNORE INTO warn (guild_id, user_id) VALUES (?, ?)", (guild_id, user_id))
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
cursor = await self._execute(self._conn.execute, sql, parameters)
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 67, in _conn
raise ValueError("no active connection")
ValueError: no active connection
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 1114, in invoke_application_command
await ctx.command.invoke(ctx)
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 375, in invoke
await injected(ctx)
File "C:\Users\juckt\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\commands\core.py", line 132, in wrapped
raise ApplicationCommandInvokeError(exc) from exc
discord.errors.ApplicationCommandInvokeError: Application Command raised an exception: ValueError: no active connection
bruh
async with aiosqlite.connect(self.DB) as db:
async with db.execute("SELECT warns FROM warn WHERE guild_id = ? AND user_id = ?", (guild_id, user_id)) as cursor:
result = await cursor.fetchone()
?
try & expect ist draußen und das gleiche
Ne screens sind besser
ja
Musst da auch noch commit machen
Mach ich
@urban glen äh ne es bleib noch was in der cache und im papierkorb
die müsstest du ebenso löschen
File "c:\Users\ich\BOT\main.py", line 4, in <module>
from discord.ext.commands import slash_command
ImportError: cannot import name 'slash_command' from 'discord.ext.commands'
kann dir morgen helfen
mach Mal pip freeze
Kann ich morgen erst
hab alles deinstalliert und die Sachen die irgendwie deinstalliert sind aber nicht waren auch deinstalliert XD und JZ alles neu gesetup und jz geht alles xd
wie ist das mit der datenbank kann ich die auch bei anderen einfach angeben wie bei JOOIni.online oder ist sie nur local auf mein pc
kommt drauf an welche db
wenn's sqlite3 oder aiosqlite dann wird die Datei erstellr
bei MySQL verbindest du dich mit Ben server
grad nicht, was gibts?
Wie macht man bei einem Select Menü wenn man auf etwas drauf klickt das man eine Rolle bekommt?
was kann ich damit anfangen ?
rd\guild.py:3087: DeprecationWarning: delete_message_days is deprecated since version 2.2, consider using delete_message_seconds instead. See https://github.com/discord/discord-api-docs/pull/5219 for more information.
await self._state.http.ban(
Delete message days ist veraltet
okay muss ich das anderes nehmen?
Ich erkenn den Fehler aus der Fehlermeldung
delete_message_days —> delete_message_seconds
Papierkorb XD und auf Benutzer
Wie macht man am besten eine broadcast message? Halt das eine Info Nachricht auf allen Servern gesendet wird wo der Bot drauf ist.
Am besten in einem random Textkanal
würde ich net empfehlen
beim joinen also einladen des bots ist es schon OK aber was du tust ist fast gegen tos
würde dann sagen du sollst es bei den commands rein tun
ImportError: cannot import name 'Option' from 'discord.ext' (unknown location)```
Wie fix ich das
import discord
from discord.ext import commands
from discord.commands import slash_command, Option
Traceback (most recent call last):
File "c:/main.py", line 3, in <module>
from discord.commands import SlashCommand
Und
ImportError: cannot import name 'SlashCommandOptionType' from 'discord.enums'
da kommt obiger error
nutz btw discord.py
oh dann weiß ich nicht nutze pycord
sowas macht spacey auch immer bei bot updates xD
pahahahahaah
bist da?
ja mein code geht iwie nicht
ich versuche inder callback methode einer Klasse auf eine andere Klasse zu zu greifen
schick mal den code
ok.
viel glück dabei.
Wofür willst du den Code?
Er hat keine Frage gestellt
Oder gesagt das er ein Problem hat
Er hat nur nh Aussage getätigt, dass er etwas versucht
achso ich dachte er hat es im Code schon versucht
idk, aber solange er kein Problem beschreibt, is doch alles oke :D
dann hilf ihm Mal xD
Wobei denn?
Er hat doch kein Problem?
er hat geschrieben "mein Code geht nicht" und das hier ist der Help kanal
Und was willst du machen?
I mean, es müsste für ihn doch Logisch sein,
zu schicken
Wofür war jetzt der Timeout?
#🔍・pycord-help :D
wie fragt man ab ob was in eine Nachricht ist?
mit message.content.startwith geht ja net weils nur auf die Nachricht bezieht mit diesen wörter
if "..." is in message.content:
Meinst du so?
ah stimmt ich dummerchen xd
kann mir da jemand helfen?
Error:
Ignoring exception in view <Views timeout=180.0 children=1> for item <Dropdown_Select_Columns placeholder='🖊️• Select
Traceback (most recent call last):
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 396, in _scheduled_task
await item.callback(interaction)
File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 769, in callback
ADD_EditModalViewInput_All_Name(
File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 553, in __init__
discord.ui.InputText(
TypeError: can't multiply sequence by non-int of type 'InputText'
Code:
wo liegt das problem?
hey kann mir jemand sagen wie ich für select menü ohne cooldown benutzen kann?
wie meinen
möchte das es keine cooldown hat
meinte select menü nutzen
es hat cooldown 160 sekunden
zum anklicken?
Er meint Timeouts ._.
j aaa
Also bisschen nachdenken kann man schon
auf none setze
glaube in der __init__ einfach timeout=None
wo genau?
Idk welche Lib du nutzt
pycord
beim super init
wo genauuuu
what the fuck
class klassenName(discord.ui.Select):
def __init__(self):
super().__init__(timeout=None)
Is das so schwer @indigo sapphire ?

in select??????
class Dropdown_Select_Columns(discord.ui.Select):
def __init__(self, options, user: int, placeholder: str):
self.user=user
super().__init__(
timeout=None,
min_values=1,
max_values=1,
placeholder=placeholder,
options=options,
)
?
fehlt da noch etwas?
ja hast doch timeout=None
Fertig
@indigo sapphire Doc's lesen würde nicht schaden
sei doch verdanmt nicht toxic
dein error:
Ignoring exception in on_ready
Traceback (most recent call last):
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 382, in _run_event
await coro(*args, **kwargs)
File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 1004, in on_ready
self.bot.add_view(Dropdown_Select_Columns)
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 1754, in add_view
raise TypeError(f"expected an instance of View not {view.__class__!r}")
TypeError: expected an instance of View not <class 'type'>
Bin ich nicht, aber man sollte erstmal basics wissen.
Ja woher soll ich ohne Code wissen was das problem is?
denkst du ich kann keine basic?
ich lerne nur das was ich brauche du töbel
Man sollte die Python basics erstmal lernen
Brauche den code damit ich weiß wo das problem ist ._.
Junge...
Da wo du dein Problem hast!
ohne timeout ging es
hast nix dazu gesagt lol
ja steht doch im error
hast nur gesagt das hier
Im error steht doch wo genau der fehler liegt
im on ready hab ich eigenlich nix
da dein on ready
# Print loaded cogs SevenDSGC
@commands.Cog.listener()
async def on_ready(self):
self.bot.add_view(Dropdown_Select_Columns)
print(Fore.GREEN + 'The File: ' + Fore.MAGENTA + '[SevenDSGC]' + Fore.GREEN + 'started succesfully!' + Fore.RESET)
Ja kein wunder...
wo liegt da den problem???
self.bot.add_view(Dropdown_Select_Columns) --> self.bot.add_view(Dropdown_Select_Columns())
Ich versuche dir zu helfen, aber du kannst nicht die basics und so is es halt schwer jemandem zu helfen
Wusstest ja nicht mal (obwohl es im error steht), wo genau in deinem Code der fehler is
lern du mal basic nett zu sein lmao
Kinder..
bevor du konversation machst
baby
Jetzt änder self.bot.add_view(Dropdown_Select_Columns) zu self.bot.add_view(Dropdown_Select_Columns())
Und außerdem steht es auch in den Doc's
error
Wait
In Dropdowns sind doch eig keinee Timeouts xD
die sind in buttons xD
Kannst das weg lassen
Warum fragst du denn nach hilfe? 
Wenn du timeout=None machen willst, dann müsstest du deinen Dropdown (Select Menu) in ein View machen.
Also:
class Dropdown_Select_Columns(discord.ui.Select):
def __init__(self, options, user: int, placeholder: str):
self.user=user
super().__init__(
timeout=None,
min_values=1,
max_values=1,
placeholder=placeholder,
options=options,
)
# Rest
class Dropdown_Select_Columns_To_View(discord.ui.View):
def __init__(self):
super().__init__(timeout=timeout)
self.add_item(Dropdown(self.bot))
...
Was?
Du machst ein Dropdown halt mit .Select und addest dieses als item in einer view
Digga checkst du es nicht?
Also:
Select Menu -> als Item in einer View hinzufügen und da timeout=None einstellen.
Und fertig!
Dann machst du halt einfach im command oder so await ctx.send(view=Dropdown_Select_Columns_To_View())
Und es wird dein Select Menu geschickt
Is das so schwer?
Korrekt
Digga ich habs dir doch schon vorgecodet
.
Is das in nem Cog?
wie ghet das?
Liegt nicht am PC sondern am Code
Schick mal deinen Code
Wofür ist denn self.time_task.start()
Das gibt es nicht
Also du hast keine Task die "time_task" heißt
Mach das einfach raus

Und wie soll man dir ohne Code helfen??????????
slash commands werden deinerseits nicht geladen also ist es auch kein Problem von Timo code
das liegt an deinen code oder bzw. an dein bot
1 Ping reicht ._.
Ich hab keine Ahnung von Pycord
Aber falls jemand davon ahnung hat, kennt er jetzt schonmal deinen Code und kann dir dann schneller helfen
das ist der source Code von Timo
der geht
nur zeig die slash commands nicht an
also hat er debug_guilds nicht drin oder die Interaktion vom bot werden nicht geladen
@urban glen einfach neuen erstellen und da schauen
wie ganz oben am Anfang gesagt...
Hab mir seine Videos nd angeschaut ._.
Sein Github auch nd
lol xd
wie macht man einen Log dazu also z.B du öffnest ein Ticket dann wird es in einen Log Channel gesendet? Ich kenn mich mit Python bisschen aus checke es nd
Und ich weiß ich muss History benutzen in eine Text Datei schreiben -> Kanal getten -> Text Datei senden verstehe aber das nd
Meinst du sowas wie ein Transcript?
Wo man dann den Ticket-Chat nochmal sehen kann?
Nein
Wie dann?
Warte
Meinst du das geloggt wird, z.B. "user xyz hat ein neues Ticket aufgemacht" oder "Ticket von xyz wurde von zyx geschlossen"?
Webind: Ich öffne mal ein Ticket und frage ob ich mich bewerben
Silvio: ja gerne ….
Ich schließe das Ticket und dann soll das in einem anderen Channel geloggt werden
Ja
einfach beim öffnen den channel getten und die nachricht schicken
Idk ob du es mit slash commands, oder buttons oder so machst
Ich mache es mit Buttons
Kannst du mir vllt Code geben wie man einen Log macht?
Ich spoon-feede nicht
ja hä, dann beim öffnen button den channel getten und abschicken
Nur einmal bitte
Nein, dadurch lernst du nichts
Hab ich doch gesagt
Channel getten und nachricht abschicken

channel = interaction.guild.get_channel(dieID)
await channel.send(...)
Is das so schwer? ._.
@manic tusk
Und was muss ich bei … eintragen?
Hä was du willst
Und das?
Kannst du das machen kurz hinzufügen
Ich kann das meiste
Tf? Was?
Ich rede von Python Basics
Nicht von pycord basics
@manic tusk
Schau dir einfach das hier an für die Basics:
- Primitive data types
- Operators
- Data structures
- Importing
- Variables, namespace and scope
- String formatting
- OOP
- Control flow
- Exception handling
- Function definitions
- Classes, objects, attributes and methods
- Console usage, interpreters and environments
- Decorators
- Asyncio basics
- Blocking
- Logging
Und wegen pycord oder so, kannst du auch docs nachlesen
hey weiss jemand wie man werte von datenbank auf deine andere datenbank (sheet) copy pasten kann? in pycord + aiosqlite
sheet?
sheet meinte ich in der datenbank table
mit chat-export gehts am einfachsten
möchte einfach ein wert aus selbe datenbank in eine andere tabel speichern
das ist mit html
info vor weg die meisten fangen an mit discord bot project an zu lernen programmieren( du mit deine basic). Lerne mal diese basic: Zwischenzeilen zu lessen
du kannst die tabelle einfach umbenennen
möchte den wert copieren
Hab 1 table als cache (Zwischenspeicher) der andere ist die öffentliche table
Möchte den cache in öffentliche schicken.
Man sollte (Was logisch ist) erstmal nur die Python grundlagen lernen, damit man auch genau versteht was man macht.
Und danach maybe mit was kleinem beginnen, z.B. Taschenrechner mit tkinter
Und danach Discord Bot's
da lernt man auch nebenbei die basic
clasen ect def
Man sollte jedoch das hier für den Anfang können.
Und das lernt man nd wenn man mit dc bot's anfängt
im python ist das noch nicht relevant
gegensatzt zu java.
Musst dafür bei beiden Datenbanken eine verbindung herstellen und dann einfach bei der einen datenbank alles SELECTen und dann halt einfach durch eine for-schleife gehen und alles in die neue datenbank eintragen
Wait ich bastel mal einen beispiel Code zusammen
async with aiosqlite.connect('quelle.db') as conn_quelle:
async with aiosqlite.connect('ziel.db') as conn_ziel:
cursor_quelle = await conn_quelle.cursor()
cursor_ziel = await conn_ziel.cursor()
await cursor_quelle.execute('SELECT * FROM tabelle') # Hier nimmst du alles aus der alten Datenbank
rows = await cursor_quelle.fetchall()
for row in rows:
await cursor_ziel.execute('INSERT INTO tabelle VALUES (?, ?, ?)', row) # und hier fügst du halt alles in die neue Db ein
await conn_ziel.commit()
Ungefähr so, falls ich deine frage richtig verstanden habe
dachte ich nehme einfach den werte raus
okay und was wäre wenn der wert schon gibgt?
Wenn es den Wert schon in der neuen Tabelle gibt?
ja
Könntest in der for-schleife einfach mit nem if-statement checken ob es schon drinne is und einfach passen
hab ich das richtig gesehen es geht in jede einzelne column und tut dort die werte rein?
was wäre wenn der column name anders gennat ist?
Du könntest halt auch einfach nen backup machen
Glaube das geht in aiosqlite
also einfach diedb.backup()
Dann wäre es da glaube nh neue Db, mit den Daten
Also halt wie nh backup
Bin mir aber nd sicher
Wofür brauchst du eigentlich die Daten von der alten DB in einer Neuen?
naja wenn ich zb mit eine slash command eintrage
und ich es später erledigen möchte kurz gesagt cache save
warum 2x connect?
ahh sooo
schon geprüft ob die if bedingung auch wirklich true wird?
Hast du message_content Intent an?
fand den error witz sehr gut
@urban glen
etwa so?
async with aiosqlite.connect(os.getenv('Shiro7DSGCSQL')) as db:
async with db.execute('SELECT * FROM SevenDSGC_TEMP_ADD_DB') as cursor:
rows = await cursor.fetchall()
# schleife
for row in rows:
await db.execute('INSERT INTO SevenDSGC_Unit VALUES (?)', row)
print(row)
await conn_ziel.commit()
Wie viel # Willst du als Kommentar setzen du: ja
ist eben design xD

was was
wie kann ich bei schleife abgleichen ob in bestimmte column name die selbe werte haben?
hey will deine gang gegen tibue gang allegen?

mit einem print zum beispiel
insgesammt 50 member
Wie mache ich das mit Chat …
try: except print
steht in den Docs von denen
Zeig ma deine Gang
einfach googlen
Wirst gewinnen
Meine Gang besteht aus meinem Server weil die mich alle lieben und unterstützen würden es um leben und Tod geht 🧢
So hab gewonnen weil meine Gang 2459 member groß ist
wo machst du das denn? in der if bedindung oder darüber?
wo ist dein print?
das print muss in die if bedingung
du willst ja mit dem print schauen ob die if bedingung true wird
was musst du wo einbinden
wo hast du attribute definiert?
wenn du es nicht aus der .env lädst, funktioniert es nicht
@wise stone was hast du bitte für ein error handler gecodet hahahhaa
einf. 351 Zeilen
nein, attribute nicht
hä
Jungs lohnt es sich von json zu sqlite umzusteigen?
why?
Die json Abfragen dauern meist länger
ja definitiv
warum wird es nicht geloaded
du hast attribute nicht definiert, bzw es ist none
damit kannst du den "in" operator nicht benutzen
ah hab ich dazu nicht extra eine else?

nein das geht so nicht
gemacht
blöd also muss ich noch elif atrib is none machen?
nimm lieber coding keks als vorlage der ist cooler als dein host
nein
hä?
wenn attribute none ist, kannst du keine deiner if abfragen ausführen
entweder setzt du das auf einen wert oder du prüfst vorher ob es none ist
hab es als erstes if gemacht
ich weiß, aber attribute ist none. entweder setzt du das auf einen wert oder du prüfst vorher ob es none ist
hab es geprüft ob es none ist gibt mir fehler
nein hast du nicht
und was für ein fehler bekommst du?
ja das versuche ich dir auch schon seit einiger zeit zu sagen xD
ahhhh
dein bot reagiert nicht?
hast dus mittlerweile geschafft dein print in die if bedingung zu tun?
ty tibu
bot = discord.Bot(
debug_guilds=None
)
Dass muss in deinen code
hier muss es hin
Am besten auch über dem if-statement
um zu sehen ob das Event überhaupt getriggert wird
Du gibst dein bestes für sowas: print(1)?
Und auch über dem if-statement
@bot.event
async def on_message(message):
print(1)
# der rest vom code
ja alle Error die ich kenne
Hast du mehrere on_message events?
In einer Datei?
die frage war ob du mehrere on_message events hast
Schick mal deinen ganzen Code..
Kein Wunder
Hast ja auch 2 on_message events
Lösch eins komplett und mach einfach so:
@bot.event
async def on_message(message):
if message.channel.id == 1051885286310826004:
await message.add_reaction("👍")
await message.add_reaction("👎")
if message.channel.id == 1057233411766493214:
await message.publish()
@urban glen
das unter muss ein Elif sein
elif
Nope kann auch so bleiben
Also habs eben selbst getestet
Bei mir funktionierts
Bei mir funktionierts so
Also muss da kein Return oder Elif hin
Ich weiß was ich tue
wie bekomme ich den id wenn den user button clickt?
Die Id vom User?
Weiß nicht wie es in pycord is
Eins von beiden
als button?
es geht schon
dein code mit sqlite
läuft nicht wie ich es mir vorstelle
es soll nur von bestimmte id alle anderen werte copieren
bzw Author_id
async def callback(self, interaction):
async with aiosqlite.connect(os.getenv('Shiro7DSGCSQL')) as db:
# temp db cache back up
async with db.execute(f'SELECT * FROM SevenDSGC_TEMP_ADD_DB WHERE (?)',(interaction.user.id)) as cursor:
rows = await cursor.fetchall()
#original
async with db.execute('SELECT * FROM SevenDSGC_Unit') as cursor:
original_rows = await cursor.fetchall()
print(interaction.user.id)
print(rows)
# await db.execute(f"INSERT OR REPLACE INTO SevenDSGC_TEMP_ADD_DB (Author_id) VALUES (?)",(interaction.user.id))
# message feedback
await interaction.response.send_message('> **Was sent or edited and saved in the database.**', ephemeral=True)
der script soll nur bei auhtor id
alle werte copieren
"WHERE (?)" was erwartest du denn?
user id
ahh
okay ty
meine db
den error:
Ignoring exception in view <Views timeout=900.0 children=2> for item <UnitEditSendButton style=<ButtonStyle.success: 3> url=None disabled=False label='Send' emoji=<PartialEmoji animated=False name='send' id=1059106536200359956> row=None>:
Traceback (most recent call last):
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 396, in _scheduled_task
await item.callback(interaction)
File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 767, in callback
async with db.execute(f'SELECT * FROM SevenDSGC_TEMP_ADD_DB WHERE Author_id=?',(interaction.user.id)) as cursor:
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\context.py", line 41, in __aenter__
self._obj = await self._coro
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
cursor = await self._execute(self._conn.execute, sql, parameters)
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 129, in _execute
return await future
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 102, in run
result = function()
ValueError: parameters are of unsupported type
Hast ein Komma vergessen
wo?
Im code von deinem Button, es ist so:
async with db.execute(f'SELECT * FROM SevenDSGC_TEMP_ADD_DB WHERE Author_id=?',(interaction.user.id)) as cursor:
Muss aber geändert werden zu:
async with db.execute(f'SELECT * FROM SevenDSGC_TEMP_ADD_DB WHERE Author_id=?',(interaction.user.id,)) as cursor:
Damit es nh Tuple is oder wie des heißt
ahhh
jetzt fehlt noch die daten zu copy pasten
bzw inserten oder wenn Unit_Title_Name gleich ist replacen
hab error:
Ignoring exception in view <Views timeout=900.0 children=2> for item <UnitEditSendButton style=<ButtonStyle.success: 3> url=None disabled=False label='Send' emoji=<PartialEmoji animated=False name='send' id=1059106536200359956> row=None>:
Traceback (most recent call last):
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\view.py", line 396, in _scheduled_task
await item.callback(interaction)
File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 810, in callback
await db.execute('INSERT INTO SevenDSGC_Unit VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)', (Author_id, Unit_Name, Alias, Unit_Title_Name, Attribute, Race, Reco_PvE_Gear, Reco_PvP_Gear, Reco_Substats, Unit_Icon, Insperation_Image, ))
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
cursor = await self._execute(self._conn.execute, sql, parameters)
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\core.py", line 67, in _conn
raise ValueError("no active connection")
ValueError: no active connection
weiss nicht warum
no active connection
ich glaube die ganzen variabeln müssen eins eingerückt werden
hhm dann keine ahnung
frag ich mich auch
await db. exexute insert into sevendsc .. muss eingerückt weden
hab ich jetzt noch den insert problem
wie hostest du den bot?
xD
Eine kleine Frage
Warum Pjcharm?
Nutzte derzeit zum python lernen z.b. visual studio code
Ignoring exception in on_ready
Traceback (most recent call last):
File "C:\Python310\lib\site-packages\discord\client.py", line 377, in _run_event
await coro(*args, **kwargs)
File "e:\bot\cogs\home.py", line 16, in on_ready
await db.execute(
File "C:\Python310\lib\site-packages\aiosqlite\core.py", line 184, in execute
cursor = await self._execute(self._conn.execute, sql, parameters)
File "C:\Python310\lib\site-packages\aiosqlite\core.py", line 129, in _execute
return await future
File "C:\Python310\lib\site-packages\aiosqlite\core.py", line 102, in run
result = function()
sqlite3.OperationalError: near ":1": syntax error```
@commands.Cog.listener()
async def on_ready(self):
async with aiosqlite.connect(self.db) as db:
await db.execute(
'''
CREATE TABLE IF NOT EXISTS homes (
user_id INTEGER PRIMARY KEY,
home_id TEXT DEFAULT 8:1
)
'''
)```
weiß wer was passiert ist?
Hey, Visual Studio geht geht genauso gut wie PyCharm. Was du benutzen möchtest, ist reine Geschmacksache 
strings musst du immer in anführungszeichen schreiben
also zum beispiel so
@commands.Cog.listener()
async def on_ready(self):
async with aiosqlite.connect(self.db) as db:
await db.execute(
"""
CREATE TABLE IF NOT EXISTS homes (
user_id INTEGER PRIMARY KEY,
home_id TEXT DEFAULT '8:1'
)
"""
)
geht geht xd


habe ich
Fehlt da nicht der super-Kontruktor? Bin noch müde und nicht so hellwach. 😄
Direkt als erstes in deine CategoryView muss das:
def __init__(self):
super().__init__(timeout=None)```
muss man nicht bei einer View class
kann man muss man nicht
weil da ein ) am Ende fehlt...
Habe Mal eine Frage zu pjcord:
Bringt es etwas die Grundlagen von Python zu können um pjcord zu nutzten? Ich lerne derzeit nämlich Python (in einer AG an der Uni für Schüler + Zuhause).
Ja auf jeden Fall, die Python Grundlagen sind eine gute Basis wenn du Pyxord arbeiten willst
oder discord.py
hast du vlt irgendwo ein try except wo du dir den Error Printen lässt?
du müssen aiohttp installieren 
import aiohttp
im terminal
im code
@urban glen pip install aiohttp & import aiohttp im code einfügen
wahrscheinlich mein Code genutzt xd
Du hast nen meme command hochgeladen? xD
bei seinem code geht es um nem meme command xD
was
kann mir jemand den code hier sicherer machen?
async with db.execute('SELECT * FROM SevenDSGC_Unit WHERE Unit_Title_Name=? OR Alias LIKE "%?%" OR Unit_Name LIKE "%?%"', self.children[0].value, self.children[0].value, self.children[0].value,) as cursor:
ich schaffe es nicht ohne das es mir eine fehler gibt
hab immer diese fehler und weiss nicht warum:
Ignoring exception in modal <cogs.SevenDSGC.ADD_EditModalViewInput_All_Name object at 0x000001DAA9AA26B0>:
Traceback (most recent call last):
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\ui\modal.py", line 324, in dispatch
await value.callback(interaction)
File "c:\Users\Manuel Berchtold\OneDrive - Kantonale Schule für Berufsbildung\Dokumente\Programmieren\Python\ShrioLaplaceBot\ShiroSystem\cogs\SevenDSGC.py", line 597, in callback
async with db.execute('SELECT * FROM SevenDSGC_Unit WHERE Unit_Title_Name=? OR Alias LIKE "%?%" OR Unit_Name LIKE "%?%"', self.children[0].value, self.children[0].value, self.children[0].value, ) as cursor:
File "C:\Users\Manuel Berchtold\AppData\Local\Programs\Python\Python310\lib\site-packages\aiosqlite\context.py", line 54, in wrapper
return Result(method(self, *args, **kwargs))
TypeError: Connection.execute() takes from 2 to 3 positional arguments but 5 were given
was mach ich falsch???

zu viele argumente werden übergeben
Du gibst 5 Argumente






