亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python編程django實(shí)現(xiàn)同一個(gè)ip十分鐘內(nèi)只能注冊一次

 更新時(shí)間:2017年11月03日 11:19:52   作者:北漂的雷子  
這篇文章主要介紹了Python編程django實(shí)現(xiàn)同一個(gè)ip十分鐘內(nèi)只能注冊一次的相關(guān)內(nèi)容,具有一定參考價(jià)值。需要的朋友可以了解下。

很多小伙伴都會(huì)有這樣的問題,說一個(gè)ip地址十分鐘內(nèi)之內(nèi)注冊一次,用來防止用戶來重復(fù)注冊帶來不必要的麻煩

邏輯:

取ip,在數(shù)據(jù)庫找ip是否存在,存在判斷當(dāng)前時(shí)間和ip上次訪問時(shí)間之差,小于600不能注冊,到登錄界面,大于600可以注冊,設(shè)計(jì)一個(gè)數(shù)據(jù)庫來存儲(chǔ)這個(gè)ip地址和訪問時(shí)間,

class Ip(models.Model):
  ip=models.CharField(max_length=20)
  time=models.DateTimeField()
  class Meta:
    verbose_name = u'訪問時(shí)間'
    verbose_name_plural = verbose_name
  def __str__(self):
    return self.ip

然后去

  python manage.py makemigrations
  python manage.py migrate

  這樣來更新我們的數(shù)據(jù)庫,然后我們運(yùn)行我們的項(xiàng)目可以在后臺(tái)看到我們新注冊的ip的數(shù)據(jù)

 我們根據(jù)前面的邏輯,可以來設(shè)計(jì)我們的代碼,

from django.views.generic.base import View
from blog.models import Ip
class RegView(View):
  def get(self,request):
    ipreques = request.META['REMOTE_ADDR']
    try:
      ip_c=Ip.objects.get(ip=ipreques)
      if ip_c :
        if (datetime.datetime.now()-ip_c.time).total_seconds()<600:
          return render(request, 'login.html', {'msg': u'10分鐘內(nèi)只能注冊一次'})
        ip_c.time=datetime.datetime.now()
        ip_c.save()
        return render(request, 'reg.html')
    except Exception as e:
      new=Ip()
      new.ip=str(ipreques)
      new.time=datetime.datetime.now()
      new.save()
      return render(request, 'reg.html')
  def post(self,request):
    username=request.POST['username']
    if len(getuser(username))<=0:
      return render(request,'reg.html',{'msg':u'用戶名應(yīng)該是6-16組成'})
    passwor1 = request.POST['password']
    passwor2 = request.POST['password1']
    shouj = request.POST['shouji']
    if len(getPhoneNumFromFile(shouj))<=0:
      return render(request, 'reg.html', {'msg':u'手機(jī)號(hào)格式是否正確'})
    shouji = User.objects.filter(mobile__exact=shouj)
    if shouji:
      return render(request, 'reg.html', {'msg': u'手機(jī)號(hào)已經(jīng)存在'})
    youjian = request.POST['email']
    if len(getMailAddFromFile(youjian))<=0:
      return render(request, 'reg.html', {'msg': u'郵箱格式是否正確'})
    use=User.objects.filter(username__exact=username)
    if use:
      return render(request,'reg.html',{'msg':u'用戶名已經(jīng)存在'})
    else:
      if passwor1==passwor2:
        use1=User()
        use1.username=username
        use1.password=passwor1
        use1.mobile=shouj
        use1.email=youjian
        use1.save()
        return HttpResponseRedirect('login')
      else:
        return render(request,'reg.html',{'msg':u'請(qǐng)查看密碼是否一致'})
    return render(request,'reg.html')

  其實(shí)這樣,我們的整個(gè)過程就已經(jīng)構(gòu)建完畢,代碼出來后,有小伙伴會(huì)問,你這代碼怎么和我用的不一樣,

我們都是函數(shù)式編程,其實(shí)很簡單,我們?nèi)ゼ蒝iew類就可以實(shí)現(xiàn)我們的面向?qū)ο蟮木幊?,在url中我們只需要這么來寫我們的代碼。

url(r'^reg$', RegView.as_view(),name='reg'),

這樣我們就可以完成了限制同個(gè)ip一段時(shí)間的注冊的次數(shù)。

總結(jié)

以上就是本文關(guān)于Python編程django實(shí)現(xiàn)同一個(gè)ip十分鐘內(nèi)只能注冊一次的全部內(nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:簡單了解Python中的幾種函數(shù)、Python定時(shí)器實(shí)例代碼、Python網(wǎng)絡(luò)編程詳解等,有什么問題可以隨時(shí)留言,小編會(huì)及時(shí)回復(fù)大家的。

相關(guān)文章

  • 解決Opencv+Python cv2.imshow閃退問題

    解決Opencv+Python cv2.imshow閃退問題

    這篇文章主要介紹了解決Opencv+Python cv2.imshow閃退問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Flask?使用類組織配置詳情

    Flask?使用類組織配置詳情

    這篇文章主要介紹了Flask使用類組織配置,在實(shí)際的項(xiàng)目中,我們一般都會(huì)建立三個(gè)環(huán)境:開發(fā)、測試和生產(chǎn)環(huán)境,這三種環(huán)境會(huì)使用不同的配置組合,為了能方便地切換配置,我們可以為不同的環(huán)境創(chuàng)建不同的配置文件,下面來看詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • Django Haystack 全文檢索與關(guān)鍵詞高亮的實(shí)現(xiàn)

    Django Haystack 全文檢索與關(guān)鍵詞高亮的實(shí)現(xiàn)

    這篇文章主要介紹了Django Haystack 全文檢索與關(guān)鍵詞高亮的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 8個(gè)實(shí)用的Python程序你知道幾個(gè)

    8個(gè)實(shí)用的Python程序你知道幾個(gè)

    這篇文章主要為大家詳細(xì)介紹了8個(gè)實(shí)用的Python程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助<BR>
    2022-02-02
  • Selenium控制瀏覽器常見操作示例

    Selenium控制瀏覽器常見操作示例

    這篇文章主要介紹了Selenium控制瀏覽器常見操作,結(jié)合實(shí)例形式分析了Selenium針對(duì)瀏覽器的窗口大小控制、前進(jìn)、后退、刷新、截屏等相關(guān)操作技巧,需要的朋友可以參考下
    2018-08-08
  • Python基礎(chǔ)教程之循環(huán)語句(for、while和嵌套循環(huán))

    Python基礎(chǔ)教程之循環(huán)語句(for、while和嵌套循環(huán))

    這篇文章主要給大家介紹了關(guān)于Python基礎(chǔ)教程之循環(huán)語句(for、while和嵌套循環(huán))的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • python的metaclass使用小結(jié)

    python的metaclass使用小結(jié)

    python中的metaclass可謂熟悉而又陌生,自己開發(fā)時(shí)很少用,閱讀源碼時(shí)卻經(jīng)常遇到,那么到底什么是metaclass呢?何時(shí)使用metaclass呢?這篇文章主要介紹了python的metaclass,需要的朋友可以參考下
    2024-01-01
  • 淺析Windows 嵌入python解釋器的過程

    淺析Windows 嵌入python解釋器的過程

    這篇文章主要介紹了Windows 嵌入python解釋器的過程,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 利用Python實(shí)現(xiàn)網(wǎng)站自動(dòng)簽到

    利用Python實(shí)現(xiàn)網(wǎng)站自動(dòng)簽到

    小五收藏了一些論壇網(wǎng)站,經(jīng)常需要自己登錄簽到,以此來獲得積分金幣等等。但天天手動(dòng)太容易忘了這件事啦。畢竟我們都會(huì)用python了,那就可以使用Selenium操作,接下來就和大家講講如何利用Python實(shí)現(xiàn)網(wǎng)站自動(dòng)簽到
    2022-08-08
  • pandas read_excel()和to_excel()函數(shù)解析

    pandas read_excel()和to_excel()函數(shù)解析

    這篇文章主要介紹了pandas read_excel()和to_excel()函數(shù)解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09

最新評(píng)論