예제 #1
0
파일: mgmt.py 프로젝트: janusnic/MeTal
def blog_create(**new_blog_data):

    new_blog = Blog()

    new_blog.site = new_blog_data['site'].id
    new_blog.name = new_blog_data['name']
    new_blog.description = new_blog_data['description']
    new_blog.url = new_blog_data['url']
    new_blog.path = new_blog_data['path']
    new_blog.local_path = new_blog.path
    new_blog.theme = new_blog_data['theme']

    new_blog.save()

    new_blog_default_category = Category(blog=new_blog,
                                         title="Uncategorized",
                                         default=True)

    new_blog_default_category.save()

    # template installation should be its own function
    # install whatever the currently set system default templates are

    user = user_from_ka(**new_blog_data)

    logger.info("Blog {} created on site {} by user {}.".format(
        new_blog.for_log, new_blog.site.for_log, user.for_log))

    return new_blog
예제 #2
0
 def post(self):
     data = request.get_json()
     if self.user_is_admin is False:
         response = failure_response(401, 'Unauthenticated requests')
         return jsonify(response)
     name = data.get('name')
     content = data.get('content')
     if name or content is None:
         response = failure_response(400, 'Missing required fields')
         return jsonify(response)
     elif name.isalpha() is False or content.isalpha() is False:
         response = failure_response(400,
                                     'Non string values are not accepted')
         return jsonify(response)
     blog = Blog(name=name, content=content, posted_user=current_user)
     blog.save()
     response = success_response({'blog_id': blog.id})
     return jsonify(response)
예제 #3
0
типа столбца - сообщает какие данные храним (INT, VAR ит.д); Виджета - то что
используется при отображении; требования к проверке.
#** Параметры полей:
null - если True, Джанго хранит пустые значения как nuul.
blank - если True, полю разрешено быть пустым.
db_index - если True, по этому полю будет создан индекс базы.
primary_key - если True, поле становится первичным ключом
unique - если True, то значения в столбце - уникальны
validator - список валидаторов для этого поля
"""
""" Создание, изменение, и сохранение объектов из базы осуществляется через
импорт классов из модели данных """

# создание объекта класса с переданными параметрами
b = Blog(name='first name', tagline='All the latest Beatles news')
b.save()  # запись значения в базу данных

b.name = 'another first name'  # изменение атрибута
b.save()  # запись нового значения в базу
b.delete()  # удаление объекта из базы

# ** для присваивания связи между объектами:
# получение объекта класса entry через метод get, присаивание id объекта (pk-1)
entry = Entry.object.get()

# получение объекта класса blog
cheese_blog = Blog.object.get(name="Cheder Talk")
entry.blog = cheese_blog  # присваивание связи между entry и blog 1 к многим
entry.save()

genry = Author(name="Genry")  # создание автора