UpdateController.lua 819 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. local json = require "json"
  2. local database = require "database"
  3. local param = require "param"
  4. local exit = require "exit"
  5. local function process (db)
  6. local op = db:operators()
  7. local num_queries = tonumber(param.queries) or 1
  8. if num_queries < 1 then
  9. num_queries = 1
  10. elseif num_queries > 500 then
  11. num_queries = 500
  12. end
  13. local worlds = {}
  14. for i=1, num_queries do
  15. local world = db:findOne({World = {id = op.equal(math.random(1,10000))}})
  16. world.randomNumber = math.random(1,10000)
  17. db:update({World = world})
  18. worlds[#worlds + 1] = world
  19. end
  20. return worlds
  21. end
  22. local status, db = pcall(database.connect)
  23. if not status then exit(db) end
  24. local status, res = pcall(process, db)
  25. db:close()
  26. if status then
  27. ngx.header.content_type = 'application/json'
  28. ngx.print(json.encode(res))
  29. else
  30. exit(res)
  31. end