From 5b05ea9fa5ae7ad069d70118595ea3bda93391e8 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mar 24 2014 05:07:59 +0000 Subject: api: fix coprs.models.User usage in search In 5f785d72 we introduced new search API, but it doesn't work now. Partial fix in 063530f1, but we have the same traceback: Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/flask/app.py", line 1701, in __call__ return self.wsgi_app(environ, start_response) File "/usr/lib/python2.7/site-packages/flask/app.py", line 1689, in wsgi_app response = self.make_response(self.handle_exception(e)) File "/usr/lib/python2.7/site-packages/flask/app.py", line 1687, in wsgi_app response = self.full_dispatch_request() File "/usr/lib/python2.7/site-packages/flask/app.py", line 1360, in full_dispatch_request rv = self.handle_user_exception(e) File "/usr/lib/python2.7/site-packages/flask/app.py", line 1358, in full_dispatch_request rv = self.dispatch_request() File "/usr/lib/python2.7/site-packages/flask/app.py", line 1344, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "/usr/share/copr/coprs_frontend/coprs/views/api_ns/api_general.py", line 416, in api_coprs_search_by_project jsonout = flask.jsonify(output) File "/usr/lib/python2.7/site-packages/flask/helpers.py", line 198, in jsonify indent=None if request.is_xhr else 2), mimetype='application/json') File "/usr/lib64/python2.7/json/__init__.py", line 250, in dumps sort_keys=sort_keys, **kw).encode(obj) File "/usr/lib64/python2.7/json/encoder.py", line 209, in encode chunks = list(chunks) File "/usr/lib64/python2.7/json/encoder.py", line 434, in _iterencode for chunk in _iterencode_dict(o, _current_indent_level): File "/usr/lib64/python2.7/json/encoder.py", line 408, in _iterencode_dict for chunk in chunks: File "/usr/lib64/python2.7/json/encoder.py", line 332, in _iterencode_list for chunk in chunks: File "/usr/lib64/python2.7/json/encoder.py", line 408, in _iterencode_dict for chunk in chunks: File "/usr/lib64/python2.7/json/encoder.py", line 442, in _iterencode o = _default(o) File "/usr/lib64/python2.7/json/encoder.py", line 184, in default raise TypeError(repr(o) + " is not JSON serializable") TypeError: is not JSON serializable Signed-off-by: Igor Gnatenko --- diff --git a/frontend/coprs_frontend/coprs/views/api_ns/api_general.py b/frontend/coprs_frontend/coprs/views/api_ns/api_general.py index 8334776..417b7fb 100644 --- a/frontend/coprs_frontend/coprs/views/api_ns/api_general.py +++ b/frontend/coprs_frontend/coprs/views/api_ns/api_general.py @@ -414,7 +414,7 @@ def api_coprs_search_by_project(project=None): repos = query.all() output = {"output": "ok", "repos": []} for repo in repos: - output["repos"].append({"username": repo.owner, + output["repos"].append({"username": repo.owner.name, "coprname": repo.name, "description": repo.description}) else: