webpy 之svn 自助注册系统

本文介绍如何使用webpy框架快速搭建一个SVN自助注册系统,通过该系统可以简化用户注册SVN账号的过程。文章详细展示了项目的文件结构、页面模板及后端逻辑,并提供了表单验证和htpasswd命令调用的具体实现。
webpy 之svn 自助注册系统
服务器装了visual svn server,注册svn账号比较麻烦,于是想搞一个网站,让他们自己注册。

--templates
--tool
--web

index.html
<em>欢迎使用自助工具</em>
<p><a href="/regsiter">注册svn</a></p>
formtest.html
$def with (form)
<form name="main" method="post"> 
<em>注册svn</em>
$:form.render()
</form>
tool htpasswd.exe
web config.py
import web,os

filePath = 'D:\Repositories\htpasswd'
rootPath = '..'
toolPath = '%s/tool'%rootPath
tempPath = '%s/templates/'%rootPath
render = web.template.render(tempPath)

urls = ('/','index',
		'/regsiter','regsiter'	
)
index.py
#coding:utf-8
import web,os

from config import render
from config import urls
from svnSetting import regsiter

class index:
    def GET(self):        
        return render.index()
		

if __name__ == "__main__":
    app = web.application(urls,globals())    
    app.run()
svnSetting.py
@author: TouchRom-PHP
'''

login = form.Form(
    form.Textbox('username'),
    form.Password('password'),
    form.Password('password_again'),    
	form.Button('set',type = 'submit'),    
    validators = [form.Validator("Passwords didn't match.", lambda i: i.password == i.password_again)]

    )

class regsiter:
    def GET(self):
        f=login()
        return render.formtest(f)
    def POST(self):
        f=login()
        if not f.validates():
            return render.formtest(f)
        else:
            #print f['username'].value
            #print f['password'].value			
			cmd = "%s/%s/htpasswd.exe -b %s %s %s"%(os.getcwd(),toolPath,filePath,f['username'].value,f['password'].value)
			print cmd
			os.system(cmd)
			return "Success!"





评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值