画像をmysqlデータベースに保存し、フロントページに表示する実現コードです。
小编はpythonの中のdjangoフレームを使って完成します。
1,まずpycharmでdjangoプロジェクトを作成し、関連環境を配置します。
ここでは、デフォルトの項目が作成されます。
settings.pyで修正する2つの構成
①まずキーボードのwin+sボタンを押して、cmdを入力し、中国語の入力方法を二回押して、英語の入力方法を教えてください。
②mysql-uroot-pパスワードを入力して車に戻ってmysqlデータベースに入り、create database表名を入力します。小さなバックでデータベースを作成します。🆗
③appの下のmodels.pyでテーブル構造を作成する
models.py
pycharmの下のTerminalで、次の2つの文を順番に実行します。
3,画像アップロード機能
urls.py
4,写真機能の展示
urls.py
5、画像の削除機能
urls.py
6,全体のデモを一回行う
時間がないので、最新のlow方式で簡単に実現します。綺麗なページと様式が加えられていません。美しいお客様が好きな方は自分でBootstrap公式サイトやjq 22に追加してください。
以上で、画像をmysqlデータベースに保存して、前のページに展示している文章を紹介します。関連画像の保存については、mysqlデータベースの展示前のページの内容を調べてください。前の文章を探してください。また、下の関連記事を見てください。これからもよろしくお願いします。
1,まずpycharmでdjangoプロジェクトを作成し、関連環境を配置します。
ここでは、デフォルトの項目が作成されます。
settings.pyで修正する2つの構成
DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'ENGINE': 'django.db.backends.mysql',
'NAME': 'photos',
'HOST': '127.0.0.1',
'PORT': '3306',
'USER': 'root',
'PASSWORD': '201314',
}
}
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
2,テーブルを作成します①まずキーボードのwin+sボタンを押して、cmdを入力し、中国語の入力方法を二回押して、英語の入力方法を教えてください。
②mysql-uroot-pパスワードを入力して車に戻ってmysqlデータベースに入り、create database表名を入力します。小さなバックでデータベースを作成します。🆗
③appの下のmodels.pyでテーブル構造を作成する
models.py
from django.db import models
# Create your models here.
class Images(models.Model):
img = models.ImageField(upload_to='static/pictures/') # upload_to='static/pictures/' ,
img_name = models.CharField(max_length=32)
create_time = models.DateTimeField(auto_now_add=True)
④データベースの移動pycharmの下のTerminalで、次の2つの文を順番に実行します。
python manage.py makemigrations
python manage.py migrate
3,画像アップロード機能
urls.py
from django.conf.urls import url
from django.contrib import admin
from app01 import views
urlpatterns = [
url(r'^admin/$', admin.site.urls),
url(r'^upload/$', views.upload, name='upload'),
]
view.py
from django.shortcuts import render, redirect
from app01 import models
# Create your views here.
def upload(request):
error = ''
if request.method == 'POST':
img = request.FILES.get('img')
pic_name = img.name
if pic_name.split('.')[-1] == 'mp4':
error = ' !!!'
else:
models.Images.objects.create(img_name=pic_name, img=img)
return redirect('show')
return render(request, 'upload.html', locals())
前のページをアップロードします。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title> </title>
</head>
<body>
<div style="height: 160px">
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
<h1> </h1>
<table cellpadding="5px">
<tr>
<td> </td>
<td><input type="file" name="img"></td>
</tr>
<tr>
<td>
<button> </button>
</td>
<td><strong style="color: red">{{ error }}</strong></td>
</tr>
</table>
</form>
</div>
<div style="text-align: center;color: #2b542c;font-size: 20px;">
<a href=" {% url 'show' %} " rel="external nofollow" > </a>
</div>
</body>
</html>
4,写真機能の展示
urls.py
"""
from django.conf.urls import url
from django.contrib import admin
from app01 import views
urlpatterns = [
url(r'^admin/$', admin.site.urls),
url(r'^upload/$', views.upload, name='upload'),
url(r'^show/$', views.show, name='show'),
]
view.py
from django.shortcuts import render, redirect
from app01 import models
# Create your views here.
def upload(request):
error = ''
if request.method == 'POST':
img = request.FILES.get('img')
pic_name = img.name
if pic_name.split('.')[-1] == 'mp4':
error = ' !!!'
else:
models.Images.objects.create(img_name=pic_name, img=img)
return redirect('show')
return render(request, 'upload.html', locals())
def show(request):
all_images = models.Images.objects.all()
# for i in all_images:
# print(i.img)
return render(request, 'show.html', locals())
フロントエンド展示ショー.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title> </title>
</head>
<body>
{% for image in all_images %}
<img src="/{{ image.img }}" style="width: 240px;height: 240px;">
{% endfor %}
<br/>
<p style="text-align: center;color: #2b542c;font-size: 20px;">
<a href="{% url 'upload' %}" rel="external nofollow" rel="external nofollow" > </a>
</p>
</body>
</html>
5、画像の削除機能
urls.py
from django.conf.urls import url
from django.contrib import admin
from app01 import views
urlpatterns = [
url(r'^admin/$', admin.site.urls),
url(r'^upload/$', views.upload, name='upload'),
url(r'^show/$', views.show, name='show'),
url(r'^delete/$', views.delete, name='delete'),
]
view.py
from django.shortcuts import render, redirect
from app01 import models
# Create your views here.
def upload(request):
error = ''
if request.method == 'POST':
img = request.FILES.get('img')
pic_name = img.name
if pic_name.split('.')[-1] == 'mp4':
error = ' !!!'
else:
models.Images.objects.create(img_name=pic_name, img=img)
return redirect('show')
return render(request, 'upload.html', locals())
def show(request):
all_images = models.Images.objects.all()
# for i in all_images:
# print(i.img)
return render(request, 'show.html', locals())
def delete(request):
pk = request.GET.get('pk')
models.Images.objects.filter(id=pk).delete()
return redirect('show')
ショー.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title> </title>
</head>
<body>
{% for image in all_images %}
<img src="/{{ image.img }}" style="width: 240px;height: 240px;">
<a href="/delete/?pk={{ image.id }}" rel="external nofollow" > </a>
{% endfor %}
<br/>
<p style="text-align: center;color: #2b542c;font-size: 20px;">
<a href="{% url 'upload' %}" rel="external nofollow" rel="external nofollow" > </a>
</p>
</body>
</html>
6,全体のデモを一回行う
時間がないので、最新のlow方式で簡単に実現します。綺麗なページと様式が加えられていません。美しいお客様が好きな方は自分でBootstrap公式サイトやjq 22に追加してください。
以上で、画像をmysqlデータベースに保存して、前のページに展示している文章を紹介します。関連画像の保存については、mysqlデータベースの展示前のページの内容を調べてください。前の文章を探してください。また、下の関連記事を見てください。これからもよろしくお願いします。