selamat datang buat teman-teman yang bersedian untuk mengunjungi blog saya untuk kita belajar bareng tentang bahasa pemograman python,pada kesempatan hari ini saya ingin share tentang apa membuat aplikasi CRUD engan menggunakan MySql sebagai databasenya. Pada artikel kali ini kita akan belajar bagaimana membuat aplikasi CRUD dengan menggunakan Python dengan database yang dipakai adalah MySQL. Show
Aplikasi Create, Read, Update, Detele (CRUD) adalah aplikasi standar yang pasti ada jika kita ingin membuat aplikasi web dinamis. Dengan fungsi CRUD kita dapat melakukan manipulasi data di dalam database melalui aplikasi yang dibuat. Sampai saat ini untuk di indonesia python bukanlah bahasa pemrograman yang populer untuk membuat aplikasi web, kebanyakan dari kita lebih memilih PHP karena lebih mudah dan mempunyai dokumentasi yang banyak. Namun jangan salah di luar negeri trends bahasa python sudah sangat tinggi bahkan lebih tinggi trendnya jika dibandingkan dengan PHP. Untuk membuat aplikasi web CRUD di python kalian perlu menyiapkan beberapa hal seperti:
Databaseuntuk membuat aplikasi crud kita harus aktifkan terlebih dahulu xamp kita jika mysql database nya sudah dalam posisi running,silahkan anda buka browser lalu ketikkan http://localhost/phpmyadmin/. Buatlah database dengan nama belajar_python seperti gambar di bawah ini klik SQL lalu ketikkan code seperti gambar di bawah ini: pipApa itu PIP?Pip merupakan program manejer paket yang ada di python digunakan untuk menginstall modul yang kita butuhkan dalam hal ini adalah Flask dan PyMySQL. cara instalasi pip di mac ossebelum kita membuat aplikasi dengan menggunakan python,sekarang kita instal terlebih dahulu pip di laptop/PC kita.kali ini saya akan share cara nya instal PIP di MacOs. untuk penguna linux dan mohon maaf ya saya tidak share caranya.mungkin teman-teman yg menggunakan OS selain macOs bisa cari referensi nya di google banyak kok. hehehe… silahkan buka terminal anda lalu ketikkan seperti berikut: curl https://bootstrap.pypa.io/ez_setup.py -o - | sudo python masukkan Password laptop anda lalu tekan enter,tunggu hingga instalasi selesai seperti gambar berikut ini untuk memastikan apakah pip yang barusan kita instal sudah terpasang ataukah gagal apa tidak dalam proses pengistalannya,kita dapat check nya dengan mengetikkan perintah seperti gambar di bawah ini PyMysqlApa itu PIPPip merupakan program manejer paket yang ada di python digunakan untuk menginstall modul yang kita butuhkan dalam hal ini adalah Flask dan PyMySQL. carainstalasi pymysqlUntuk menginstall modul PyMySQL sangatlah mudah, kita hanya perlu menginstall lewat program pip. Langkah-langkahnya seperti berikut: Buka Command Prompt dan ketikan perintah: python -m pip install PyMySQL Atau bisa juga pip install PyMySQL jika penginstalan berhasil maka akan seperti gambar di atas Apai itu Flask?Flask adalah kerangka kerja aplikasi web (web framework) yang bersifat micro, istilah ini dipakai karena flask menyediakan pustaka atau alat bantu inti yang digunakan untuk proses membangun sebuah aplikasi web, jadi istilah micro ini bukan berarti bahwa mengembangkan aplikasi web dengan flask hanya dilakukan dalam skala kecil. Apabila ada kebutuhan lain yang dibutuhkan, flask mengizinkan kita untuk menambah fitur lain yang spesifik sebagai ekstensi. Cara Menginstal FlaskKita bisa menginstal flask melalui program pip. Berikut ini adalah cara menginstal flask di pyhton:
Untuk mengecek apakah flask sudah benar-benar berhasil di instal ataukah belum,coba masuk ke dalam IDLE (python shell) dengan cara ketik python untuk masuk ke program python interpreter setelah masuk yang ditandai dengantanda >>> ketik perintah import flask Jika tidak ada pesan error itu berarti Flask sudah terpasang dengan benar dan siap untuk digunakan. Membuat Aplikasi CRUD Python dengan MySQLLangkah pertama kalian buat sebuah folder project dalam direktori komputer kalian, terserah kalian bisa menempatkan di direktori manapun. Sebagai contoh disini saya membuat folder crud di desktop saya dengan nama belajar_python. Buat file app.pySetelah itu buat file app.py menggunakan teks editor. File ini berfungsi sebagai objek aplikasi (kalo di dalam framework lain bisa kita sebut sebagai controller). from flask import Flask, render_template, \ request, redirect, url_for import pymysql.cursors, os application = Flask(__name__) conn = cursor = None #fungsi koneksi database def openDb(): global conn, cursor conn = pymysql.connect("localhost","root","","belajar_python" ) cursor = conn.cursor() #fungsi untuk menutup koneksi def closeDb(): global conn, cursor cursor.close() conn.close() #fungsi view index() untuk menampilkan data dari database @application.route('/') def index(): openDb() container = [] sql = "SELECT * FROM barang" cursor.execute(sql) results = cursor.fetchall() for data in results: container.append(data) closeDb() return render_template('index.html', container=container,) #fungsi view tambah() untuk membuat form tambah @application.route('/tambah', methods=['GET','POST']) def tambah(): if request.method == 'POST': nama = request.form['nama'] harga = request.form['harga'] stok = request.form['stok'] openDb() sql = "INSERT INTO barang (nama_barang, harga,stok) VALUES (%s, %s, %s)" val = (nama, harga, stok) cursor.execute(sql, val) conn.commit() closeDb() return redirect(url_for('index')) else: return render_template('tambah.html') #fungsi view edit() untuk form edit @application.route('/edit/<id_barang>', methods=['GET','POST']) def edit(id_barang): openDb() cursor.execute('SELECT * FROM barang WHERE id_barang=%s', (id_barang)) data = cursor.fetchone() if request.method == 'POST': id_barang = request.form['id_barang'] nama = request.form['nama'] harga = request.form['harga'] stok = request.form['stok'] sql = "UPDATE barang SET nama_barang=%s, harga=%s, stok=%s WHERE id_barang=%s" val = (nama, harga, stok, id_barang) cursor.execute(sql, val) conn.commit() closeDb() return redirect(url_for('index')) else: closeDb() return render_template('edit.html', data=data) #fungsi untuk menghapus data @application.route('/hapus/<id_barang>', methods=['GET','POST']) def hapus(id_barang): openDb() cursor.execute('DELETE FROM barang WHERE id_barang=%s', (id_barang,)) conn.commit() closeDb() return redirect(url_for('index')) if __name__ == '__main__': application.run(debug=True) File app.py adalah file yang menjadi file utama atau bisa kita sebut sebagai controllernya. Dimana file ini sebagai objek aplikasi yang menghubungkan antara template melalui fungsi view() dengan data yang kita ambil dari database MySQL. Membuat TemplatePada tahap ini kita akan membuat template untuk menampilkan interface aplikasi kepada pengguna. ada 3 template yang akan kita buat yaitu index.html, tambah.html dan edit.html. Langkah awal kalian harus buat dulu folder templates untuk menyimpan semua file template di dalam satu folder. 1. index.htmlTemplate index.html berfungsi sebagai halama awal untuk menampilkan daftar barang dari database. Buatlah file index.html menggunakan teks editor, kode nya seperti di bawah ini: <!-- Code by TaufikBudiBlog Author: Taufik Budi Setiawan Author URL: https://taufikbudiblog.wordpress.com License: Creative Commons Atribusi-NonKomersial 4.0 Internasional License URL: http://creativecommons.org/licenses/by-nc/4.0/ --> <html> <head> <title>Aplikasi CRUD python Menggunakan Flask | taufikbudiblog.wordpress.com </title> <link rel="stylesheet" href="{{ url_for('static', filename='bootstrap/css/bootstrap.min.css') }}"> </head> <body> <div class="container"> <h2>Aplikasi CRUD python Menggunakan Flask</h2> <table class="table table-bordered table-hover"> <thead> <tr> <th>ID Barang</th> <th>Nama Barang</th> <th>Harga</th> <th>Stok</th> <th width="10%" colspan="2">Aksi</th> </tr> </thead> <tbody> {% for row in container %} <tr> <td>{{ row[0] }}</td> <td>{{ row[1] }}</td> <td>{{ row[2] }}</td> <td>{{ row[3] }}</td> <td><a href="http://localhost:5000/edit/{{row[0]}}" class="btn btn-warning" role="button">Ubah</a></td> <td><a href="http://localhost:5000/hapus/{{row[0]}}" class="btn btn-danger" role="button">Hapus</a></td> </tr> {% endfor %} </tbody> </table> <a href="http://localhost:5000/tambah" class="btn btn-primary" role="button">Tambah Data</a> </div> </body> </html> 2. tambah.htmlTemplate yang kedua adalah tambah.html yang akan berfungsi sebagai from input tambah data ke database. Lakukan cara yang sama seperti langkah sebelumnya. <!-- Code by TaufikBudiBlog Author: Taufik Budi Setiawan Author URL: https://taufikbudiblog.wordpress.com License: Creative Commons Atribusi-NonKomersial 4.0 Internasional License URL: http://creativecommons.org/licenses/by-nc/4.0/ --> <html> <head> <title>Aplikasi CRUD python Menggunakan Flask | taufikbudiblog.wordpress.com </title> <link rel="stylesheet" href="{{ url_for('static', filename='bootstrap/css/bootstrap.min.css') }}"> </head> <body> <div class="container"> <div class="col-sm-5"> <h2>Tambah Data Barang</h2> <form action="{{ url_for('tambah') }}" method="post"> <div class="form-group"> <label>Nama Barang:</label> <input type="text" name="nama" class="form-control" placeholder="Masukan nama barang" required /> </div> <div class="form-group"> <label>Harga:</label> <input type="number" name="harga" class="form-control" placeholder="Masukan harga" required /> </div> <div class="form-group"> <label>Stok:</label> <input type="number" name="stok" class="form-control" placeholder="Masukan stok" required /> </div> <button type="submit" id="Submit" name="submit" class="btn btn-primary">Tambah Barang</button> </form> </div> </div> </body> </html> 3. edit.htmlPada template yang ketiga kita membuat edit.html yang berfungsi untuk menampilkan form edit data. <!-- Code by TaufikBudiBlog Author: Taufik Budi Setiawan Author URL: https://taufikbudiblog.wordpress.com License: Creative Commons Atribusi-NonKomersial 4.0 Internasional License URL: http://creativecommons.org/licenses/by-nc/4.0/ --> <html> <head> <title>Aplikasi CRUD python Menggunakan Flask | taufikbudiblog.wordpress.com </title> <link rel="stylesheet" href="{{ url_for('static', filename='bootstrap/css/bootstrap.min.css') }}"> </head> <body> <div class="container"> <div class="col-sm-5"> <h2>Ubah Data Barang</h2> <form action="url_for('edit', id_barang={{data[0]}})" method="post"> <div class="form-group"> <input type="hidden" name="id_barang" value="{{data[0]}}" class="form-control" /> </div> <div class="form-group"> <label>Nama Barang:</label> <input type="text" name="nama" value="{{data[1]}}" class="form-control" placeholder="Masukan nama barang" required /> </div> <div class="form-group"> <label>Harga:</label> <input type="number" name="harga" value="{{data[2]}}" class="form-control" placeholder="Masukan harga" required /> </div> <div class="form-group"> <label>Stok:</label> <input type="number" name="stok" value="{{data[3]}}" class="form-control" placeholder="Masukan stok" required /> </div> <button type="submit" id="Submit" name="submit" class="btn btn-primary">Edit Barang</button> </form> </div> </div> </body> </html> Kita tidak membuat fungsi view() hapus karena sudah langsung kita definisikan dari objek aplikasi (lihat pada file app.py). Konfigurasi BootstrapJika kalian perhatikan pada setiap file template kita menggunakan bootstrap yang di panggil dari tag <head> pada setiap template. Agar dapat menggunakan bootstrap, silahkan kalian download dulu ya di website nya. Setelah kalian berhasil mendownload, selanjutnya buatlah folder static lalu simpan file bootstrap di dalam folder tersebut. Menjalankan AplikasiUntuk menjalankan aplikasi kita menggunakan command prompt dengan cara arahkan direktori ke folder project yang kita buat lalu jalankan objek aplikasi menggunakan perintah python app.py jika tampil seperti gambar di atas maka pertanda bahwa aplikasi yang sudah kita buat sudah bisa kita jalankan di browser silahkan anda buka browser anda lalu ketikkan http://127.0.0.1:5000 maka akan seperti gambar di bawah ini silahkan anda testing aplikasi yg sudah anda buat Dengan demikian kita telah berhasil membuat aplikasi web di python dengan mengimplementasi flask sebagai web framewrok dan database mysql untuk membuat aplikasi CRUD sederhana ini, kalian tentunya bisa mengembangkan lebih jauh dari apa yang saya bahas disini. Buat teman-teman yang masih bingung untuk tutorial yang saya bahas di atas, untuk lebih mudah kalian bisa mendownload secara gratis dibawah ini: Langkah langkah pembuatan CRUD dalam database MySQL?Jika Anda belum memahami bagaimana membuat fitur CRUD menggunakan PHP dan MySQL silahkan simak langkah-langkah berikut:. STEP 1 – Persiapan. ... . STEP 2 – Membuat Database. ... . STEP 3 – Buat Koneksi Database. ... . STEP 4 – Buat View Data. ... . STEP 5 – Buat Insert Data. ... . STEP 6 – Buat Update Data. ... . STEP 7 – Buat Delete Data.. Apa itu CRUD di Python?Aplikasi Create, Read, Update, Detele (CRUD) adalah aplikasi standar yang pasti ada jika kita ingin membuat aplikasi web dinamis. Dengan fungsi CRUD kita dapat melakukan manipulasi data di dalam database melalui aplikasi yang dibuat.
Apa itu CRUD MySQL?CRUD adalah operasi khusus yang nantinya akan mengharuskan database untuk membuat, membaca, memperbarui, atau menghapus data.
Langkah langkah membuat CRUD?Membuat CRUD di Halaman CRUD. Membuat Sistem Registrasi. Bagian ini nanti Anda akan membuat sebuah form registrasi lengkap dengan database di dalamnya. ... . Membuat File Config. ... . Membuat Form Registrasi. ... . Membuat Sistem Login. ... . Membuat Form Login. ... . 6. Membuat Halaman Utama. ... . 7. Membuat Script Logout.. |