DjangoにDeleteViewを追加する
DeleteViewは、フロントエンドからモデルデータを削除するために使用されるDjangoのビューです。簡単に適用できるビルトインビューです。ビューを削除する際の管理ページのように機能します。これは、実際のプロジェクトで非常に役立ちます。
まず、Djangoプロジェクトとアプリを作成します。 "tutorial11"という名前でプロジェクトを作成しました "modelFormsDemo"という名前のアプリ 。
それでは、いくつかの基本的なことをしましょう。 settings.pyにアプリを追加します −
INSTALLED_APPS+ = ['modelFormsDemo']
プロジェクトのurls.py −
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('modelFormsDemo.urls'))
]> ここにアプリのURLを含めました。
アプリのurls.py −
from django.urls import path,include
from . import views
urlpatterns = [
path('', views.home,name="home"),
path('student/delete//', views.StudentDeleteView.
as_view(),name="delete"),
path('success/',views.success,name='success')
] ここでは、3つのURLを作成しました。1つはフロントエンドのレンダリング用、DeleteViewは削除用、Successは削除後のリダイレクト用です。
例
models.py内 、これを追加-
from django.db import models # Create your models here. class Student(models.Model): name=models.CharField(max_length=100) standard=models.CharField(max_length=100) section=models.CharField(max_length=100)
ここでは、単純なモデルを作成しました。
views.py内 、次を追加します-
from django.shortcuts import render
from .forms import StudentForm
from django.views.generic.edit import DeleteView
from .models import Student
from django.urls import reverse_lazy
# Create your views here.
def home(request):
if request.method=='POST':
form=StudentForm(request.POST)
if form.is_valid():
form.save()
stuForm=StudentForm()
return render(request,'home.html',{"stu_form":stuForm})
class StudentDeleteView(DeleteView):
model=Student
template_name='delete_view.html'
success_url=reverse_lazy("success") ここでは、ホームビューでフロントエンドをレンダリングし、DeleteViewで delete_view.htmlをレンダリングしました。 削除の確認を求められます。
forms.pyを作成します アプリディレクトリに書き込み、これを書き込みます-
from django import forms from .models import Student class StudentForm(forms.ModelForm): class Meta: model=Student fields=['name', 'standard', 'section']
ここでは、ホームビューでレンダリングする単純なフォームを作成しました。
次に、テンプレートを作成します フォルダを作成し、その中に3つのファイルを追加します home.html、delete_view.html およびsuccess.html。
home.html内 −
<!DOCTYPE html>
<html>
<head>
<title>TUT</title>
</head>
<body>
{% for fm in stu_form %}
<form method="post">
{%csrf_token%}
{{fm.errors}}<br>
{{fm.label}}:{{fm}}<br>
{%endfor%}
<button type="submit">Submit</button>
</form>
</body>
</html> delete_view .html −
<!DOCTYPE html>
<html>
<head>
<title>TUT</title>
</head>
<body>
<form method="post">{% csrf_token %}
<p>Are you sure you want to delete "{{ object }}"?</p>
<input type="submit" value="Confirm">
</form>
</body>
</html> success.html内 −
<!DOCTYPE html> <html> <head> <title>TUT</title> </head> <body> <h2>Success</h2> </body> </html>
3つすべてがレンダリングしているHTMLファイルです。 home.html 学生を追加するためのものです、 delete_view.html 学生を削除するためのものであり、 success.html リダイレクト用。
これで、出力の確認に進むことができます。
出力
Home.html −
https://127.0.0.1:8000/student/delete/(student object id)/にアクセスすると、delete_view.html。が表示されます。
Delete_view.html −
-
DjangoモデルにJSONフィールドを追加する
この記事では、DjangoモデルにJSONフィールドを追加する方法を説明します。 JSONは、データをキーと値の形式で保存するための単純な形式です。中括弧で書かれています。多くの場合、開発者のWebサイトでは、開発者データを追加する必要があり、そのような場合はJSONフィールドが役立ちます。 まず、Djangoプロジェクトとアプリを作成します。 INSTALLED_APPSにアプリを追加したり、URLを設定したり、基本的なモデルを作成したり、そのフォームをHTMLファイルにレンダリングしたりするなど、すべての基本的なことを行ってください。 例 django-jsonfieldをインストー
-
Edgeブラウザのお気に入りをHTMLファイルにインポートまたはエクスポートする方法
別のブラウザに切り替える場合は、Edgeのお気に入りを移行または転送するオプションがあると便利です。 MicrosoftEdgeはこのオプションを提供します。 Edgeブラウザのお気に入りをインポートまたはエクスポートできます HTMLファイルに。それがどのように行われるかをご覧ください! Edgeブラウザのお気に入りをHTMLファイルにインポートまたはエクスポートする ブックマークを使用すると、特定のWebブラウザにWebページを保存して、いつでもすばやくアクセスできるようになります。他のブラウザでもこの機能を有効にすると、時間と労力の両方を節約できます。 Microsoft Edge