Home >  > Django开发一个留言板

Django开发一个留言板

一、前端模板
复制前端模板,一般都在form表单里面,另外再搭配一个java script。

二、添加csrf_token
一定要在表单的

</form>

前面加上{% csrf_token %}

三、修改models
根据前端表单的样式,设计数据库。

class UserMessage(models.Model):
    name = models.CharField(max_length=20,verbose_name="用户名")
    email = models.EmailField(verbose_name = "邮箱")
    original_url = models.URLField(max_length=300,verbose_name="原始链接")
    reported_url = models.URLField(max_length=300,verbose_name="本站链接")
    message = models.TextField(max_length = 1024,verbose_name="留言信息")

    class Meta:
        verbose_name = '用户留言信息'

并生成数据库。

四、views
其中urlcopy,link这些名称是前端表单中设定的name。

def DmcaView(request):
    if request.method == "POST":
        name = request.POST.get('name','')
        email = request.POST.get('email','')
        original_url = request.POST.get('urlcopy','')
        reported_url = request.POST.get('link','')
        message = request.POST.get('message','')
        user_message = UserMessage()
        user_message.name = name
        user_message.email = email
        user_message.original_url = original_url
        user_message.reported_url = reported_url
        user_message.message = message
        user_message.save()
        
    return render(request, 'blog/dmca.html')

五、设定url

 url(r'^dmca/$', DmcaView, name='dmca'),  # dmca页面

六、前端代码

<form class="form-horizontal" role="form" name="cform" method="post" action="/dmca/">
	<input type="hidden" name="referer" value="https://www.">
	<input type="hidden" name="m" value="dmca">

	<div class="formshow_block">

		<div class="input_block mt20" style="margin-top:10px;">
			<label for="email"><p class="g_tipsite">* Your Name:</p></label>
			<input type="text" name="name" class="input_text input_text_3 g_inputrigger" value="">
		</div>

		<div class="input_block mt20"  style="margin-top:10px;">
			<label for="email"><p class="g_tipsite">* Your email:</p></label>
			<input type="text" name="email" class="input_text input_text_3 g_inputrigger email" value="">
		</div>
		<div class="input_block mt20"  style="margin-top:10px;">
			<label for="email"><p class="g_tipsite">* The original URL of the copyrighted work:</p></label>
			<input type="text" name="urlcopy" class="input_text input_text_3 g_inputrigger email" value="https://">
		</div>
		<div class="input_block mt20"  style="margin-top:10px;">
			<label for="email"><p class="g_tipsite">* Reported URL on Sparklepng.com:</p></label>
			<input type="text" name="link" class="input_text input_text_3 g_inputrigger email" value="">
		</div>


		<div class="input_block mt20" style="margin-top:10px;">
			<label for="givequestion"><p class="g_tipsite">* Please describe the copyrighted work in detail:</p></label>
			<textarea name=message class="form-control" cols=50 rows=12></textarea>
		</div>


		<p class="g_right_a mt20"><a class="create_one_but abtn" href="javascript:reportdmca()"   style="background:#232328;">Submit</a><span id="mail_status_hint" style="color: green; font-weight: bold; margin-left: 15px; display: none;"></span></p>
	</div>	
	{% csrf_token %}
</form>

注意:
一、django-simple-captcha
本来打算安装django-simple-captcha,结果它不提示,直接将我的django卸载了。
后再卸载最新版本django,重安装django旧版本问题解决。

Installing collected packages: typing-extensions, sqlparse, asgiref, Django, django-ranged-response, django-simple-captcha                                        Attempting uninstall: Django                                                      Found existing installation: Django 1.11.12                                     Uninstalling Django-1.11.12:                                                      Successfully uninstalled Django-1.11.12                                   

参考:https://blog.csdn.net/happygjcd/article/details/103075918

暧昧帖

本文暂无标签