indextank-service icon indicating copy to clipboard operation
indextank-service copied to clipboard

About storfront/get_started and api server

Open prim opened this issue 13 years ago • 6 comments

  • Sorry for my broken English at first.
  • The get_started.page is where we can create a account, right? so remove "#", right? https://github.com/linkedin/indextank-service/blob/master/storefront/urls.py line 21
#url(r'^get-started/$', 'storefront.views.get_started', name='get_started'),
  • Change config info in settings.py.
  • But, when I visit the get_started page in browser, input my mail, click signup, the page would do nothing. In the get_started.html, here just a easy form id "signup": https://github.com/linkedin/indextank-service/blob/master/storefront/templates/get_started.html line > 48
          <form id="signup">
            <div class="form_sec">
              <div class="input_bg">
                <label><span class="none">&nbsp;</span>
                <input type="text" emptyvalue="Email" class="empty" name="" id="email" />
                </label>
              </div>
              <label>
              <input type="submit" value="SIGN UP" class="signup"/>
              <span class="none">&nbsp;</span> </label>
              <div id="email_error"></div>
            </div>
          </form>
  • However, if u read the views.py code: https://github.com/linkedin/indextank-service/blob/master/storefront/views.py line 290
  if request.is_ajax() and request.method == 'POST':
  • It seem need AJAX, but I cant find any js file or js code will this AJAX request.
  • I am a web newbie, not familiar with Django. If I ask stupid question, sorry. Thanks for your reply.

prim avatar Jan 10 '12 13:01 prim

  • I do things like theres, remove is_ajax() check : https://github.com/linkedin/indextank-service/blob/master/storefront/views.py line 290
if request.method == 'POST':
  • Add "email" to name, https://github.com/linkedin/indextank-service/blob/master/storefront/templates/get_started.html
<input type="text" emptyvalue="Email" class="empty" name="email" id="email" />
  • Change some email address in code, create a account now... :)

prim avatar Jan 10 '12 14:01 prim

  • https://github.com/linkedin/indextank-service/blob/master/storefront/views.py line 17
from lib.indextank.client import ApiClient, IndexAlreadyExists, TooManyIndexes, InvalidDefinition, InvalidQuery
  • I change all "lib.indextank.client" to "indextank.client", I have setup the python client, Do I did it right?

prim avatar Jan 10 '12 14:01 prim

  • Here are so many "indextank.com" write in code, so I use dnsmasq to make "indextank.com" point to my machine.
  • Run api server on port 80
  • But still cant run REST api server in the right way. When I try to create a index on page "127.0.0.1:8080/dashboard", api server always give me useless trackback, can find out where go wrong.
  • Here is the account info: http://:[email protected] http://dottr.api.indextank.com
Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.6/django/core/servers/basehttp.py", line 280, in run
    self.result = application(self.environ, self.start_response)
  File "/usr/lib/pymodules/python2.6/django/core/servers/basehttp.py", line 674, in __call__
    return self.application(environ, start_response)
  File "/usr/lib/pymodules/python2.6/django/core/handlers/wsgi.py", line 241, in __call__
    response = self.get_response(request)
  File "/usr/lib/pymodules/python2.6/django/core/handlers/base.py", line 130, in get_response
    return self.handle_uncaught_exception(request, resolver, sys.exc_info())
  File "/usr/lib/pymodules/python2.6/django/core/handlers/base.py", line 180, in handle_uncaught_exception
    return callback(request, **param_dict)
  File "/usr/lib/pymodules/python2.6/django/views/defaults.py", line 23, in server_error
    t = loader.get_template(template_name) # You need to create a 500.html template.
  File "/usr/lib/pymodules/python2.6/django/template/loader.py", line 157, in get_template
    template, origin = find_template(template_name)
  File "/usr/lib/pymodules/python2.6/django/template/loader.py", line 138, in find_template
    raise TemplateDoesNotExist(name)
TemplateDoesNotExist: 500.html
[10/Jan/2012 14:48:02] "GET http://dottr.api.indextank.com/v1/indexes/test_index HTTP/1.1" 500 1273

prim avatar Jan 10 '12 14:01 prim

I just added the missing js back. We removed it when we disabled new signups on indextank.com, and forgot to enable it back.

The commit with the change is 8909646

dbuthay avatar Jan 16 '12 21:01 dbuthay

Er, how to handle the api server 500? It seems always get a uncaught exception.

prim avatar Jan 17 '12 01:01 prim

mmm that looks like:

  • you are getting an error while creating the index
  • there's no template for status 500 to render that error

Is that the only error you get on the API log ? Don't you get an error before that? Maybe on /data/logs/apierrors.log ?

dbuthay avatar Jan 17 '12 20:01 dbuthay