Hata bu yeni olduğum için çözümünü bulamadım yardımcı olursanız sevinirim
OperationalError
(sqlite3.OperationalError) unable to open database file
(Background on this error at: Error Messages — SQLAlchemy 1.4 Documentation)
The above exception was the direct cause of the following exception:
File “C:\Users\erdem\OneDrive\Masaüstü\sosyalMedyaSitesi\database.py”, line 8, in
Base.prepare(engine, reflect=True)
File “C:\Users\erdem\OneDrive\Masaüstü\sosyalMedyaSitesi\app.py”, line 2, in
from database import *
app.py
from flask import Flask,render_template,request, session
from database import *
from uyarimesaj import UyariMesaj
app = Flask(name)
#("/") Anasayfa gösterimi
@app.route("/")
def anasayfa():
return render_template(“anasayfa.html”)
@app.route("/uyeol",methods=[“POST”,“GET”])
def uyeol():
mesaj=None
if request.method==“POST”:
ad = request.form.get(“inputad”)
soyad = request.form.get(“inputsoyad”)
email = request.form.get(“inputemail”)
sifre = request.form.get(“inputsifre”)
sifretekrar = request.form.get(“inputsifretekrar”)
if sifre == sifretekrar:
KullaniciSinif = Database.startCon().classes.kullanici
eklenecekKullanici = KullaniciSinif(ad=ad,soyad=soyad,email=email,sifre=sifre)
session = Database.loadSession()
session.add(eklenecekKullanici)
try:
session.commit()
mesaj=UyariMesaj(1,“Üyelik Başarılı !”)
except :
mesaj=UyariMesaj(2,“Üyelik Başarısız !”)
else:
pass
return render_template(“uyeol.html”,sayfaMesaj=mesaj)
@app.route("/girisyap")
def girisyap():
return render_template(“girisyap.html”)
if name == “main”:
app.run(debug=True)
database.py
from sqlalchemy.ext.automap import automap_base
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
Base = automap_base()
engine = create_engine(“sqlite:///db/app/sosyalmedya.db”,
connect_args={‘check_same_thread’: False})
Base.prepare(engine, reflect=True)
Session = sessionmaker(bind=engine)
class Database:
@staticmethod
def startCon():
return Base # database tablolarını getirir.
@staticmethod
def loadSession():
session = Session()
return session # oturum açma
uyarimesaj.py
class UyariMesaj:
def init(self,status,mesaj):
self.status=status
self.mesaj = mesaj
uyeol.html
<meta charset="UTF-8">
<link href="{{ url_for('static',filename='css/bootstrap.min.css') }}" rel="stylesheet"/>
<link href="{{ url_for('static',filename='css/signin.css') }}" rel="stylesheet" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>EsTwit - Üye Ol</title>
<form action="/uyeol" method="POST" class="form-signin w-100 m-auto">
<img class="mb-4" src="https://w7.pngwing.com/pngs/885/490/png-transparent-eskisehirspor-hd-logo.png" alt="" width="72" height="72">
<h1 class="h3 mb-3 fw-normal">Üye Ol</h1>
<div class="form-floating">
<input type="text" class="form-control" id="ınputad" name="ınputad" placeholder="Ad Giriniz" required>
<label for="ınputad">Ad</label>
</div>
<div class="form-floating">
<input type="text" class="form-control" id="inputsoyad" name="inputsoyad" placeholder="Soyad Giriniz" required>
<label for="inputsoyad">Soyad</label>
</div>
<div class="form-floating">
<input type="email" class="form-control" id="ınputemail" name="ınputemail" placeholder="name@gmail.com" required>
<label for="ınputemail">Email</label>
</div><div class="form-floating">
<input type="password" class="form-control" id="ınputsifre" name="ınputsifre" placeholder="Şifre Giriniz" required>
<label for="ınputsifre">Şifre</label>
</div>
<div class="form-floating">
<input type="password" class="form-control" id="inputsifretekrar" name="inputsifretekrar" placeholder="Tekrar Şifre Giriniz" required>
<label for="inputsifretekrar">Şifre Tekrar</label>
</div>
<button class="w-100 btn btn-lg btn-primary" type="submit" value="Üye Ol">Üye Ol</button>
<p class="mt-5 mb-3 text-muted">© 2022</p>
{% if sayfaMesaj %}
{% if sayfaMesaj.status == 1 %}
<div class="alert alert-success">
{{sayfaMesaj.mesaj}}
</div>
{% elif sayfaMesaj.status == 2 %}
<div class="alert alert-danger">
{{sayfaMesaj.mesaj}}
</div>
{% else %}
<div class="alert alert-info">
{{sayfaMesaj.mesaj}}
</div>
{% endif %}
{%endif%}
</form>