Django简单方式实现留言板

2025-11-01 20:49:39

1、打开命令行窗口,创建django工程,并在工程内创建应用,命令如下:

django-admin startproject djboard

cd djboard

python manage.py startapp msg

Django简单方式实现留言板

2、使用PyCharm打开此工程,在工程同名目录的settings文件夹,配置模板路径,注册应用,修改部分代码如下:

INSTALLED_APPS = [

 

   'django.contrib.admin',

 

   'django.contrib.auth',

 

   'django.contrib.contenttypes',

 

   'django.contrib.sessions',

 

   'django.contrib.messages',

 

   'django.contrib.staticfiles',

 

   'msg.apps.MsgConfig',

 

]

 

TEMPLATES = [

 

   {

 

       'BACKEND': 'django.template.backends.django.DjangoTemplates',

 

       'DIRS': [os.path.join(BASE_DIR,'templates')],

 

       'APP_DIRS': True,

 

       'OPTIONS': {

 

           'context_processors': [

 

               'django.template.context_processors.debug',

 

               'django.template.context_processors.request',

 

               'django.contrib.auth.context_processors.auth',

 

               'django.contrib.messages.context_processors.messages',

 

           ],

 

       },

 

   },

 

]

Django简单方式实现留言板

3、在工程根目录新建templates文件夹,并在文件夹内新建‘board.html’文件,文件内容如下:

<!DOCTYPE html>

 

<html lang="en">

 

<head>

 

   <meta charset="UTF-8">

 

   <title>留言板</title>

 

   <style>

 

       .container{

 

           width:50%;

 

           height:200px;

 

           background-color:red;

 

       }

 

       .lb{

 

           vertical-align: top;

 

       }

 

       .cc{

 

           margin:10px;

 

       }

 

       .container1{

 

           width:50%;

 

           height:600px;

 

           background-color:blue;

 

       }

 

   </style>

 

</head>

 

<body>

 

   <div class="container">

 

       <form action="/msg/" method="POST">

 

           {% csrf_token%}

 

           <label>欢迎留言</label>

 

           <div class="cc">

 

               <label class="lb" >姓名</label>

 

               <input type="text" class="xm" name="name">

 

           </div>

 

           <div class="cc">

 

               <label class="lb"  for ="content">内容</label>

 

               <textarea id="content"  name="content" ></textarea>

 

           </div>

 

           <input type="submit"  value="提交">

 

       </form>

 

   </div>

 

   <div class="container1">

 

       <h3>历史留言</h3>

 

       {% if messages %}

 

       <ol>

 

          {% for message in messages %}

 

           <li>{{message.name}} 在 ({{message.date}})留言

 

           <div id="message">

 

               {{message.content}}

 

           </div>

 

           </li>

 

           {%endfor%}

 

       </ol>

 

       {% endif %}

 

   </div>

 

</body>

 

</html>

比较简陋的前端,仅仅实现了提交留言和显示留言

Django简单方式实现留言板

4、在应用msg文件夹内的models.py文件,添加如下代码,定义模型类:

from django.db import models

 

# Create your models here.

 

class Message(models.Model):

 

   name = models.CharField(max_length=30)

 

   date = models.DateTimeField(auto_now_add=True)

 

   content = models.CharField(max_length=255)

Django简单方式实现留言板

5、在工程的urls.py文件include应用的urls.py文件,代码如下;

from django.conf.urls import url,include

 

from django.contrib import admin

 

urlpatterns = [

 

   url(r'^admin/', admin.site.urls),

 

   url(r'',include('msg.urls')),

 

]

Django简单方式实现留言板

6、在应用文件夹新建‘urls.py’文件,并写两个url路径,代码如下:

from . import views

 

from django.conf.urls import url

 

 

urlpatterns = [

 

   url(r'board/',views.board),

 

   url(r'msg/',views.msg),

 

]

Django简单方式实现留言板

7、在应用视图文件,编写上面的两个视图函数,board用来显示,msg用来处理提交的留言,代码如下:

from django.shortcuts import render,redirect

 

from . import models

 

# Create your views here.

 

def board(request):

 

   messages = models.Message.objects.all()

 

   return render(request,'dashboard.html',{'messages':messages})

 

def msg(request):

 

   if request.method == 'POST':

 

       name = request.POST['name']

 

       content = request.POST['content']

 

       msg = models.Message.objects.create(name=name,content=content)

 

       return redirect('/board/')

Django简单方式实现留言板

8、生成数据库迁移文件,并迁移数据库,代码如下:

python manage.py makemigrations

python manage.py migrate

Django简单方式实现留言板

9、运行服务器,打开页面提交留言,能正常显示,成功

python manage.py runserver

Django简单方式实现留言板

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢