default.py 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. from pyramid.response import Response
  2. from pyramid.view import view_config
  3. from sqlalchemy.exc import DBAPIError
  4. from ..models import MyModel
  5. from ..models import Content
  6. @view_config(route_name='test_config', renderer='../templates/mytemplate.jinja2')
  7. def test_config(request):
  8. try:
  9. project = request.config().WEBSITE_TITLE
  10. except Exception as e:
  11. return Response(e, content_type='text/plain', status=500)
  12. return {'project': project}
  13. @view_config(route_name='test_model', renderer='../templates/mytemplate.jinja2')
  14. def test_model(request):
  15. try:
  16. # project = request.dbsession.query(MyModel)
  17. except Exception as e:
  18. return Response(e, content_type='text/plain', status=500)
  19. return {'project': project}
  20. @view_config(route_name='home', renderer='../templates/mytemplate.jinja2')
  21. def my_view(request):
  22. try:
  23. query = request.dbsession.query(MyModel)
  24. one = query.filter(MyModel.name == 'one').first()
  25. except DBAPIError:
  26. return Response(db_err_msg, content_type='text/plain', status=500)
  27. return {'one': one, 'project': 'tracim'}
  28. db_err_msg = """\
  29. Pyramid is having a problem using your SQL database. The problem
  30. might be caused by one of the following things:
  31. 1. You may need to run the "initialize_tracim_db" script
  32. to initialize your database tables. Check your virtual
  33. environment's "bin" directory for this script and try to run it.
  34. 2. Your database server may not be running. Check that the
  35. database server referred to by the "sqlalchemy.url" setting in
  36. your "development.ini" file is running.
  37. After you fix the problem, please restart the Pyramid application to
  38. try it again.
  39. """