Ejemplo n.º 1
0
 def get(self, country_name):
     country = CountryModel.find_by_name(country_name)
     if country:
         return country.json(), 200
     return {
         'message': "Country -'{}'- not found.".format(country_name)
     }, 404
Ejemplo n.º 2
0
 def delete(self, country_name):
     country = CountryModel.find_by_name(country_name)
     if country:
         country.delete_from_db()
         return {
             'message': "Country '{}' deleted".format(country_name)
         }, 200
     return {'message': "Country '{}' not found.".format(country_name)}, 404
Ejemplo n.º 3
0
    def delete(cls, name: str):
        # claims = get_current_user()
        # if not claims['is_admin']:
        #     return {'message': 'Admin privilege required.'}, 401

        item = CountryModel.find_by_name(name)
        if item:
            item.delete_from_db()

        return {'message': ITEM_DELETED.format(name)}
Ejemplo n.º 4
0
    def put(self, country_name):
        data = CountryName.parser.parse_args()
        country = CountryModel.find_by_name(country_name)

        if country:
            country.country_code = data['country_code']
        else:
            country = CountryModel(data['country_code'], country_name)

        country.save_to_db()
        return country.json()
Ejemplo n.º 5
0
    def post(cls, name):
        if RegionModel.find_by_name(name):
            return {'message': NAME_ALREADY_EXISTS.format(name)}, 400

        item_json = request.get_json()
        country = CountryModel.find_by_name(item_json['country_name'])

        item_json['name'] = name
        item_json['country_id'] = country.id
        item = item_schema.load(item_json)

        try:
            item.save_to_db()
        except:
            return {'message': ERROR_INSERTING}, 500

        return item_schema.dump(item), 201
Ejemplo n.º 6
0
    def put(cls, name: str):
        item_json = request.get_json()
        item = CountryModel.find_by_name(name)

        if item:
            item.population = item_json['population']
            item.land_area = item_json['land_area']
            item.migrants = item_json['migrants']
            item.medium_age = item_json['medium_age']
            item.urban_pop = item_json['urban_pop']
        else:
            item_json['name'] = name
            item = item_schema.load(item_json)

        item.save_to_db()

        return item_schema.dump(item), 200
Ejemplo n.º 7
0
    def post(cls, name: str):
        if CountryModel.find_by_name(name):
            return {'message': NAME_ALREADY_EXISTS.format(name)}, 400

        try:
            data = request.get_json()
        except Exception:
            return {'message': 'Data is empty.'}
        data['name'] = name

        try:
            item = item_schema.load(data)
        except TypeError:
            return {'message': 'Data is not correct.'}

        try:
            item.save_to_db()
        except:
            return {'message': ERROR_INSERTING}, 500

        return item_schema.dump(item), 201
Ejemplo n.º 8
0
    def post(self, country_name):
        if CountryModel.find_by_name(country_name):
            return {
                'message':
                "A country with name '{}' already exists.".format(country_name)
            }, 400

        data = CountryName.parser.parse_args()

        if CountryModel.find_by_code(data['country_code']):
            return {
                'message':
                "A country with code '{}' already exists.".format(
                    data['country_code'])
            }, 400

        country = CountryModel(data['country_code'], country_name)

        try:
            country.save_to_db()
        except:
            return {'message': "An error occurred inserting the country."}, 500
        return country.json(), 201
Ejemplo n.º 9
0
 def get(cls, name: str):
     item = CountryModel.find_by_name(name)
     if item:
         return item_schema.dump(item), 200
     return {'message': ITEM_NOT_FOUND}, 404