Guest User

Untitled

a guest
Mar 23rd, 2018
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. from flask import Flask
  2. from flask_restful import Api, Resource, reqparse
  3. import requests
  4. import getpass
  5. import os
  6.  
  7.  
  8.  
  9. app = Flask(__name__)
  10. api = Api(app)
  11.  
  12. myusr = getpass.getuser()
  13. lispost = os.listdir('/home/{}/artctrl-backup/wcmckee/artcontrolme/posts/'.format(myusr))
  14. users = list()
  15.  
  16. for user in lispost:
  17. if '.meta' in user:
  18. with open('/home/{}/artctrl-backup/wcmckee/artcontrolme/posts/{}'.format(myusr, user)) as metaf:
  19. lines= metaf.readlines()
  20. lintit = (lines[0][10:])
  21. linslug = (lines[1][9:])
  22. lindate = (lines[2][9:])
  23. somedict = dict()
  24. somedict.update({'title' : lintit.replace('\n', ''), 'name': lines[1][9:].replace('\n', ''), 'date': lines[2][9:].replace('\n', '')})
  25. users.append(somedict)
  26.  
  27. print(users)
  28.  
  29. class User(Resource):
  30. def get(self, name):
  31. for user in users:
  32. print(user)
  33. if(name == user["name"]):
  34. return user, 200
  35. return "User not found", 404
  36.  
  37. def post(self, name):
  38. parser = reqparse.RequestParser()
  39. parser.add_argument("age")
  40. parser.add_argument("occupation")
  41. args = parser.parse_args()
  42.  
  43. for user in users:
  44. if(name == user["name"]):
  45. return "User with name {} already exists".format(name), 400
  46.  
  47. user = {
  48. "name": name,
  49. "age": args["age"],
  50. "occupation": args["occupation"]
  51. }
  52. users.append(user)
  53. return user, 201
  54.  
  55. def put(self, name):
  56. parser = reqparse.RequestParser()
  57. parser.add_argument("age")
  58. parser.add_argument("occupation")
  59. args = parser.parse_args()
  60.  
  61. for user in users:
  62. if(name == user["name"]):
  63. user["age"] = args["age"]
  64. user["occupation"] = args["occupation"]
  65. return user, 200
  66.  
  67. user = {
  68. "name": name,
  69. "age": args["age"],
  70. "occupation": args["occupation"]
  71. }
  72. users.append(user)
  73. return user, 201
  74.  
  75. def delete(self, name):
  76. global users
  77. users = [user for user in users if user["name"] != name]
  78. return "{} is deleted.".format(name), 200
  79.  
  80. api.add_resource(User, "/user/<string:name>")
  81.  
  82. app.run(debug=True)
Add Comment
Please, Sign In to add comment