Example #1
0
    def remove(self,id):
        field = self.get(id)
        model = Model().get(field['model_id'])  

        sql = 'ALTER TABLE `qc_%s` drop %s' 
        sql = sql % (model['title'] , field['name'])
        mysql.execute(sql)

        self.find().where('id = ?',id).delete()
Example #2
0
    def edit(self,id,data):
        model = self.get(id)

        if model : 
            self.find().where('id = ?' , id).save(data)

            if model['title'] != data['title'] :
                sql = 'alter table qc_%s rename qc_%s;'
                sql = sql % (model['title'] , data['title'])
                mysql.execute(sql)
Example #3
0
    def remove(self,id):
        model = self.get(id)

        if model :
            # 删除对应的栏目
            categoryModel = Category()
            categorys = categoryModel.find().where('model_id = ?' , id).get(100)
            for v in categorys:
                categoryModel.remove(v['id'])

            # 删除对应的表
            sql = 'DROP TABLE IF EXISTS qc_%s ;' % model['title']
            mysql.execute(sql)

            # 删除模型
            ModelData().find('model_id = ?' ,id).delete()
            self.find().where('id = ?' , id).delete()
Example #4
0
    def edit(self, id , data):
        field = self.get(id)

        if data['name'] in ModelData.attr :
            return { 
                'success' : False ,
                'msg' : data['name'] + '是保留字段'
            }

        #检查字段是否存在
        count = self.find().where('name = ?' , data['name'])\
                           .where('id != ?' , id)\
                           .where('model_id = ?',field['model_id'])\
                           .count()

        if count != 0 :
            return { 
                'success' : False ,
                'msg' : '字段已经存在'
            }

        if field['name'] != data['name'] \
           or field['type'] != data['type'] :

            model = Model().get(field['model_id']) 
            sql = 'ALTER TABLE `qc_%s` CHANGE %s %s %s;'

            if int(data['max_len']) != 0 :
                length = '(%s)' % str(data['max_len'])
            else :
                length = ''

            sql = sql % (model['title'] , field['name'] , data['name'] , data['type'] + length)
            mysql.execute(sql)

        self.find().where('id = ?' , id).save(data)

        return { 
            'success' : True
        }
Example #5
0
    def add(self,data):
        
        model = Model().get(data['model_id']) 

        if data['name'] in ModelData.attr :
            return { 
                'success' : False ,
                'msg' : data['name'] + '是保留字段'
            }

        #检查字段是否存在
        count = self.find().where('name = ?' , data['name'])\
                           .where('model_id = ?',data['model_id'])\
                           .count()

        if count != 0 :
            return { 
                'success' : False ,
                'msg' : '字段已经存在'
            }

        id = self.find().add(data)
        field = self.get(id)
   
        sql = 'ALTER TABLE `qc_%s` Add %s %s%s;'
        if int(field['max_len']) != 0 :
            length = '(%s)' % str(field['max_len'])
        else :
            length = ''

        sql = sql % (model['title'] , field['name'] , field['type'] , length )
        mysql.execute(sql)

        return { 
            'success' : True
        }
Example #6
0
    def createTable(self,id):
        
        data = self.get(id)
        if data :
            sql = '''CREATE TABLE IF NOT EXISTS `qc_%s` (
                      `id` INT NOT NULL AUTO_INCREMENT ,
                      `model_id` INT NULL ,
                      `locale_id` INT NULL ,
                      `category_has_article_id` INT NULL ,
                      `ip` VARCHAR(15) NULL ,
                      `user_id` INT NOT NULL ,
                      `time` INT NOT NULL ,
                      `change_time` INT NOT NULL ,
                      `listorder` INT NOT NULL DEFAULT 0 ,
                      %s
                      PRIMARY KEY (`id`) ,
                      INDEX `IX_model_locale` (`model_id` DESC , `locale_id` DESC , `category_has_article_id` DESC) )
                    ENGINE = InnoDB;'''

            table = data['title']
            sql = sql % ( table , self.buildFieldSql(id) )

            return mysql.execute(sql)
Example #7
0
import os

# 设置系统编码为utf8
code = sys.getdefaultencoding()
if code != 'utf8':
	reload(sys)
	sys.setdefaultencoding('utf8')

import tornado.database
from YooYo.db.mySql import Database

path = os.path.dirname(__file__)

Database.addConnect(tornado.database.Connection(
	host = host,
	database = database ,
	user = user ,
	password = password 
))

if create_database :
	#print 'CREATE DATABASE `%s`;' % database
	Database.execute('CREATE DATABASE `%s`;' % database)

sqlFile = open(os.path.join(path,'qcms.sql') , 'r')	
sql = sqlFile.read()
sqlFile.close()

#print sql
print Database.execute(sql)

configTpl = '''
Example #8
0
# 设置系统编码为utf8
code = sys.getdefaultencoding()
if code != 'utf8':
    reload(sys)
    sys.setdefaultencoding('utf8')

import config
import tornado.ioloop
import tornado.database
import tornado.web

from YooYo.db.mySql import Database

# 添加类搜索路径
sys.path.append(os.path.join(config.app_path, 'app/module/'))

# 连接数据库
database = config.settings['database'][config.settings['run_mode']]
Database.addConnect(
    tornado.database.Connection(
        host=database['host'],
        database=database['database'],
        user=database['user'],
        password=database['password']))

# run app
application = tornado.web.Application(config.routes, **config.settings)
application.listen(config.settings['port'])
tornado.ioloop.IOLoop.instance().start()