Как документировать тело сообщения с помощью flask-ReSTplus? - PullRequest
0 голосов
/ 26 июня 2018

insert user data

Как задокументировать вводимое тело, которое, как ожидается, будет опубликовано в поле value, чтобы пользователь знал, что публиковать? в настоящее время используются следующие данные:

{
 "customer_id": "",
 "service_id": "",
 "customer_name": "",
 "site_name": "",
 "service_type": ""
}

можем ли мы заполнить значение по умолчанию указанным выше json?

Код:

post_parser = reqparse.RequestParser()
post_parser.add_argument('database',  type=list, help='user data', location='json')

@ns_database.route('/insert_user')
class database(Resource):
@ns_database.expect(post_parser)
def post(self):
    """insert data"""
    json_data = request.json
    customer_id = json_data['customer_id']
    service_id = json_data['service_id']
    customer_name = json_data['customer_name']
    site_name = json_data['site_name']
    service_type = json_data['service_type']

Ответы [ 2 ]

0 голосов
/ 26 июня 2018

Я решил это (частично), используя следующую модель

""" Model for documenting the API"""

insert_user_data = ns_database.model("Insert_user_data",
                                 {
                                     "customer_id": 
fields.String(description="cust ID", required=True),
                                     "service_id": 
fields.String(description="service ID", required=True),
                                     "customer_name": 
fields.String(description="Customer1", required=True),
                                     "site_name": 
fields.String(description="site", required=True),
                                     "service_type": 
fields.String(description="service", required=True)
                                 }
                                 )


@ns_database.route('/insert_user')
class database(Resource):
    @ns_database.expect(insert_user_data)
    def post(self):
        """insert data"""
        json_data = request.json
        customer_id = json_data['customer_id']
        service_id = json_data['service_id']
        customer_name = json_data['customer_name']
        site_name = json_data['site_name']
        service_type = json_data['service_type']

Теперь API показывает модель для ввода данных и пример

solved

0 голосов
/ 26 июня 2018

Предполагая, что вы используете шаблон Flask для возврата веб-страницы /database/insert_user, вы можете просто сделать переменную, содержащую информацию базы данных (customer_id и т. Д.) Доступной для того, где вызывается render_template, а затем передать ей переменную.

Например, если вы хотите передать переменную customer_id:

return render_template("insert_user.html", 
x=customer_id)

при условии, что insert_user.html является вашим файлом шаблона, вы можете затем разместить данные там, где вы хотите, используя {{ x }}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...