In case it might help, here is my trace back file and the controller (I am
doing a manual insert, maybe I should not ?) :

## CONTROLLER STARTS HERE

               form = SQLFORM(db.fichiers, fields=['nom_fichier',
'fichier', 'project', 'description', 'users', 'deleted'])
                if form.validate():
                        form.vars.create_date =
str(datetime.datetime.today().date())
                        form.vars.create_time =
str(datetime.datetime.today().time())
                        form.vars.id = db.fichiers.insert(**dict(form.vars))

## CONTROLLER ENDS HERE

## START TRACEBACK

(dp1
S'output'
p2
S"<type 'exceptions.MemoryError'> "
p3
sS'layer'
p4
S'/var/opt/app/applications/init/views/default/fichiers.html'
p5
sS'code'
p6
S'left_sidebar_enabled,right_sidebar_enabled=False,True\nresponse.write(\'\\n\',
escape=False)\nresponse.write(\'<!DOCTYPE html>\\n<!--
paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/-->\\n<!--[if
lt IE 7]><html class="ie ie6 ie-lte9 ie-lte8 ie-lte7 no-js"
lang="\', escape=False)\nresponse.write(T.accepted_language or
\'en\')\nresponse.write(\'"> <![endif]-->\\n<!--[if IE 7]><html class="ie
ie7 ie-lte9 ie-lte8 ie-lte7 no-js" lang="\',
escape=False)\nresponse.write(T.accepted_language or
\'en\')\nresponse.write(\'"> <![endif]-->\\n<!--[if IE 8]><html class="ie
ie8 ie-lte9 ie-lte8 no-js" lang="\',
escape=False)\nresponse.write(T.accepted_language or
\'en\')\nresponse.write(\'"> <![endif]-->\\n<!--[if IE 9]><html class="ie9
ie-lte9 no-js" lang="\', escape=False)\nresponse.write(T.accepted_language
or \'en\')\nresponse.write(\'"> <![endif]-->\\n<!--[if (gt IE
9)|!(IE)]><!--> <html class="no-js" lang="\',
escape=False)\nresponse.write(T.accepted_language or
\'en\')\nresponse.write(\'"> <!--<![endif]-->\\n<head>\\n  <meta
charset="utf-8" />\\n  <!--
www.phpied.com/conditional-comments-block-downloads/ -->\\n  <!-- Always
force latest IE rendering engine\\n\\t   (even in intranet) & Chrome
Frame\\n\\t   Remove this if you use the .htaccess -->\\n  <!--[if IE]>\\n
   <meta http-equiv="X-UA-Compatible" content="IE=edge\',
escape=False)\nresponse.write(not request.is_local and \',chrome=1\' or
\'\')\nresponse.write(\'">\\n  <![endif]-->\\n  \\n  <title>\',
escape=False)\nresponse.write(response.title or
request.application)\nresponse.write(\'</title>\\n  \\n  <!--
http://dev.w3.org/html5/markup/meta.name.html -->\\n  <meta
name="application-name" content="\',
escape=False)\nresponse.write(request.application)\nresponse.write(\'"
/>\\n  \\n  <!-- Speaking of Google, don\\\'t forget to set your site
up:\\n\\t   http://google.com/webmasters -->\\n  <meta
name="google-site-verification" content="" />\\n\\n  <!--  Mobile Viewport
Fix\\n\\t  j.mp/mobileviewport &
davidbcalhoun.com/2010/viewport-metatag\\n\\t  device-width: Occupy full
width of the screen in its current orientation\\n\\t  initial-scale = 1.0
retains dimensions instead of zooming out if page height > device
height\\n\\t  user-scalable = yes allows the user to zoom in -->\\n  <meta
name="viewport" content="width=device-width, initial-scale=1.0,
user-scalable=yes">\\n  \\n  <!-- Place favicon.ico and
apple-touch-icon.png in the root of your domain and delete these references
-->\\n  <link rel="shortcut icon" href="\',
escape=False)\nresponse.write(URL(\'static\',\'favicon.ico\'))\nresponse.write(\'"
type="image/x-icon">\\n  <link rel="apple-touch-icon" href="\',
escape=False)\nresponse.write(URL(\'static\',\'favicon.png\'))\nresponse.write(\'">\\n\\n
 <!-- All JavaScript at the bottom, except for Modernizr which enables
\\n\\t   HTML5 elements & feature detects -->\\n  <script src="\',
escape=False)\nresponse.write(URL(\'static\',\'js/modernizr.custom.js\'))\nresponse.write(\'"></script>
 \\n\\n  <!-- include stylesheets -->\\n  \',
escape=False)\nresponse.files.append(URL(\'static\',\'css/skeleton.css\'))\nresponse.files.append(URL(\'static\',\'css/web2py.css\'))\nresponse.files.append(URL(\'static\',\'css/archimanager.css\'))\nif
response.menu:\n
 response.files.append(URL(\'static\',\'css/superfish.css\'))\n
 response.files.append(URL(\'static\',\'js/superfish.js\'))\n
 pass\nresponse.write(\'\\n\\n  \', escape=False)\nresponse.write(\'<script
type="text/javascript"><!--\\n    // These variables are used by the
web2py_ajax_init function in web2py_ajax.js (which is loaded below).\\n
 var w2p_ajax_confirm_message = "\', escape=False)\nresponse.write(T(\'Are
you sure you want to delete this object?\'))\nresponse.write(\'";\\n    var
w2p_ajax_date_format = "\',
escape=False)\nresponse.write(T(\'%Y-%m-%d\'))\nresponse.write(\'";\\n
 var w2p_ajax_datetime_format = "\',
escape=False)\nresponse.write(T(\'%Y-%m-%d
%H:%M:%S\'))\nresponse.write(\'";\\n    //--></script>\\n\',
escape=False)\nresponse.files.insert(0,URL(\'static\',\'js/jquery.js\'))\nresponse.files.insert(1,URL(\'static\',\'css/calendar.css\'))\nresponse.files.insert(2,URL(\'static\',\'js/calendar.js\'))\nresponse.files.insert(3,URL(\'static\',\'js/web2py.js\'))\nresponse.include_meta()\nresponse.include_files()\nresponse.write(\'\\n\',
escape=False)\nresponse.write(\'\\n\\n  \', escape=False)\nif
response.menu:\n    response.write(\'\\n  <script
type="text/javascript">\\n    jQuery(function(){
jQuery(\\\'ul.sf-menu\\\').supersubs({minWidth:12,maxWidth:30,extraWidth:3}).superfish();
});\\n  </script>\\n  \', escape=False)\n    pass\nresponse.write(\'\\n\\n
 \', escape=False)\n# using sidebars need to know what sidebar you want to
use\nleft_sidebar_enabled =
globals().get(\'left_sidebar_enabled\',False)\nright_sidebar_enabled =
globals().get(\'right_sidebar_enabled\',False)\nmiddle_columns =
{0:\'sixteen\',1:\'twelve\',2:\'eight\'}[\n(left_sidebar_enabled and 1 or
0)+(right_sidebar_enabled and 1 or 0)]\nresponse.write(\'\\n\\n  <!--
uncomment here to load jquery-ui\\n  <link rel="stylesheet" href="
http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css";
type="text/css" media="all" />\\n  <script src="
http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js";
type="text/javascript"></script>\\n  uncomment to load jquery-ui
//-->\\n</head>\\n<body>\\n  <div class="wrapper"><!-- for sticky footer
-->\\n  \\n    <div class="topbar">\\n      <div class="container">    \\n
       <div class="sixteen columns">\\n          <div id="navbar">\',
escape=False)\nresponse.write(\'auth\' in globals() and
auth.navbar(separators=(\' \',\' | \',\'\')))\nresponse.write(\'</div>\\n
       \',
escape=False)\nis_mobile=request.user_agent().is_mobile\nresponse.write(\'\\n\\t
 \', escape=False)\nif response.menu:\n    response.write(\'\\n
 <div id="menu">\\n             \', escape=False)\n
 response.write(MENU(response.menu, _class=\'mobile-menu\' if is_mobile
else \'sf-menu\',mobile=is_mobile))\n    response.write(\'\\n
 </div>\\n          \', escape=False)\n    pass\nresponse.write(\'\\n
 </div>\\n      </div>\\n    </div><!-- topbar -->\\n    \\n    <div
class="header">\\n      <div class="container">         \\n        <div
class="sixteen columns">\\n          <h1 class="remove-bottom"
style="margin-top: .5em;">\\n          Archimanager\\n          </h1>\\n
       <h5>\', escape=False)\nresponse.write(response.subtitle or
\'\')\nresponse.write(\'</h5>\\n        </div>\\n        <div
class="sixteen columns">\\n          <div class="statusbar clearfix">\\n
         \', escape=False)\nresponse.write(\'\\n            <div
class="breadcrumbs">\',
escape=False)\nresponse.write(request.function.replace(\'_\', \'
\').title())\nresponse.write(\'</div>\\n            \',
escape=False)\nresponse.write(\'\\n          </div>\\n        </div>\\n
 </div>\\n    </div>\\n\\n    <div class="main">\\n      <div
class="container">                 \\n        \\n        <div
class="sixteen columns center">\\n          \',
escape=False)\nresponse.write(\'\\n          \',
escape=False)\nresponse.write(\'\\n\\n\', escape=False)\nif msg !=
\'start\':\n    response.write(\'\\n\\t\', escape=False)\n
 response.write(msg)\n    response.write(\'\\n\', escape=False)\n
 pass\nresponse.write(\'\\n\\n\',
escape=False)\nresponse.write(SQLTABLE(rex,\nlinkto=URL(r=request,
f=\'fichiers\'),\nheaders={ \'fichiers.id\':\'ID\',
\'fichiers.nom_fichier\':\'Fichier\', \'fichiers.fichier\':\'download\',
\'projects.project\':\'Projet\', \'fichiers.create_date\':\'Date
Creation\', \'fichiers.create_time\':\'Heure Creation\',
\'fichiers.description\':\'Description\', \'fichiers.users\':\'List
Utilisateurs\'},\nupload=URL(\'download\')\n))\nresponse.write(\'\\n\\n<br><hr>\\n<a
href=\', escape=False)\nresponse.write(URL(r=request,
f=\'fichiers\'))\nresponse.write(\'>Ajouter Nouveau</a>\\n<br>\\n\\n\',
escape=False)\nresponse.write(form)\nresponse.write(\'\\n\\n\\n\',
escape=False)\nresponse.write(\'\\n\\n\',
escape=False)\nresponse.write("\\n\\n<script>\\n$(function() {\\n
 $(\'#fichiers_project\').on(\'change\', function() {\\n        //alert(
$(this).attr(\'value\') ) ;\\n        var proj = $(this).attr(\'value\')
;\\n        $(\'#fichiers_users option\').each( function() {\\n
 if ( $(this).attr(\'value\') ) {\\n                //alert( $(this).val()
);\\n                var userProject = $(this).text().split(\':\')[1]\\n
             if ( userProject == proj ) {\\n                    //alert(
\'userproject is :\' + userProject ) ;\\n
 $(this).css(\'visibility\',\'visible\') ;\\n                }\\n
     else {\\n                    //alert( \'lets hide it\' );\\n
         $(this).css(\'visibility\',\'hidden\') ;\\n                }\\n
         }\\n        } ) ;\\n    } );\\n} );\\n</script>\\n\\n",
escape=False)\nresponse.write(\'\\n          \',
escape=False)\nresponse.write(\'\\n        </div>\\n        \\n
 </div><!-- container -->\\n    </div><!-- main -->\\n    \\n    <div
class="push"></div>\\n  </div><!-- wrapper -->\\n\\n  <div
class="footer">\\n    <div class="container">    \\n      <div
class="sixteen columns">\\n        \', escape=False)\nresponse.write(\'
<!-- this is default footer -->\\n        <div class="footer-content
clearfix">\\n          <div class="copyright">\',
escape=False)\nresponse.write(T(\'Copyright\'))\nresponse.write(\' &#169;
2012</div>\\n          <div style="float: right;">\\n\\t\\t\\tcabinet
Mimoun Mokhtar\\n          </div>\\n        </div>\\n        \',
escape=False)\nresponse.write(\'\\t\\n      </div>\\n    </div><!--
container -->\\n  </div><!-- footer -->\\n  \\n  <!--[if lt IE 7
]>\\n\\t<script src="\',
escape=False)\nresponse.write(URL(\'static\',\'js/dd_belatedpng.js\'))\nresponse.write(\'"></script>\\n\\t<script>
DD_belatedPNG.fix(\\\'img, .png_bg\\\'); //fix any <img> or .png_bg
background-images </script>\\n\\t<![endif]-->\\n  \', escape=False)\nif
response.google_analytics_id:\n    response.write(\'<script
type="text/javascript"> var _gaq = _gaq || [];
_gaq.push([\\\'_setAccount\\\', \\\'\', escape=False)\n
 response.write(response.google_analytics_id)\n    response.write("\']);
_gaq.push([\'_trackPageview\']); (function() { var ga =
document.createElement(\'script\'); ga.type = \'text/javascript\'; ga.async
= true; ga.src = (\'https:\' == document.location.protocol ? \'https://ssl\'
: \'http://www\') + \'.google-analytics.com/ga.js\'; var s =
document.getElementsByTagName(\'script\')[0]; s.parentNode.insertBefore(ga,
s); })(); </script> ", escape=False)\n
 pass\nresponse.write(\'\\n</body>\\n</html>\\n\', escape=False)'
p7
sS'snapshot'
p8
(dp9
sS'traceback'
p10
S'Traceback (most recent call last):\n  File
"/var/opt/app/gluon/restricted.py", line 205, in restricted\n    exec ccode
in environment\n  File
"/var/opt/app/applications/init/views/default/fichiers.html", line 59, in
<module>\n  File "/var/opt/app/gluon/tools.py", line 1189, in navbar\n
 next =
\'?_next=\'+urllib.quote(URL(args=request.args,vars=request.vars))\n  File
"/var/opt/app/gluon/html.py", line 328, in URL\n    other += \'?%s\' %
urllib.urlencode(list_vars)\n  File "/usr/lib/python2.7/urllib.py", line
1311, in urlencode\n    v = quote_plus(str(v))\n  File
"/usr/lib/python2.7/urllib.py", line 1272, in quote_plus\n    s = quote(s,
safe + \' \')\n  File "/usr/lib/python2.7/urllib.py", line 1267, in quote\n
   return \'\'.join(map(quoter, s))\nMemoryError\n'
p11


# END TRACEBACK

Reply via email to