标签: web2py

Django vs Pylons vs Web2py:注册,邀请,活动

我在几个精确的点上比较了这3个非常不同的框架.我已经知道Django有更多用户,Pylons更灵活.我是一个糟糕的程序员,所以我正在寻找一个让我轻松的框架.

首先,我希望用户能够注册他们的电子邮件地址:没有愚蠢的用户名!就像在Facebook上一样,他们必须添加他们的名字和姓氏.我知道在旧的Django框架中这并不容易.我测试了django-registration应用程序.它不允许这种类型的注册!一个人必须创建一个AUTHENTICATION_BACKEND.这对我来说太复杂了......我想知道在Pylons中是否存在一个简单的解决方案.我已经看到在Web2Py中很容易做到.

其次,我想只允许被邀请的人注册.我想要一个电子邮件邀请系统.我知道它存在于Django中,但django-invitation应用程序在django-registration应用程序之上工作,所以它需要一个用户名!在Pylons或Web2Py中有一个简单的解决方案吗?

第三,在我的社交网络应用程序中,我希望人们向其他人发送消息.因此,当他们键入某人的名字时,它必须显示为现有名称.有点像Stackoverflow上的"标签系统".在Django,Pylons或Web2py中这么容易吗?

django pylons web2py registration

5
推荐指数
2
解决办法
2060
查看次数

如何使多个web2py应用程序使用相同的layout.html?

我有三个应用程序,但我希望它们使用相同的layout.html和css.有没有办法实现这个目标?

编辑:

我将静态文件夹和layout.html等放在web2py根目录下的/ common /中.

这是我在模型中所做的:

import os
global web2py_path
web2py_path = os.environ.get('web2py_path', os.getcwd())
session.layout_path = web2py_path + '/common/layout.html'
print 'session.layout_path = ' + session.layout_path
Run Code Online (Sandbox Code Playgroud)

然后在视图中:

{{extend session.layout_path}}
Run Code Online (Sandbox Code Playgroud)

编辑2:

关于下面关于编译的评论,我决定将'common'文件夹放入'/ applications /'并将静态文件夹(css,images)放在'common'文件夹中,就像常规应用程序一样.然后我将layout.html放入'common'的根目录中.然后从另一个应用程序的视图,我使用:

{{extend '../../common/layout.html'}}
Run Code Online (Sandbox Code Playgroud)

其中引用了普通应用中的layout.html.然后,此layout.html文件使用以下内容引用"common"中静态文件夹中的文件:

{{=URL('common','static','css','style.css')}}
Run Code Online (Sandbox Code Playgroud)

就像你经常申请一样.

css python web2py

5
推荐指数
1
解决办法
937
查看次数

帮助获得第一个web2py Cron任务工作

我在Windows 7本地运行web2py并在Linux Ubuntu服务器上运行,但我无法让我的cron作业运行.

我的crontab看起来像这样:

*/1 * * * * root *autoemail/send_autoemails 
Run Code Online (Sandbox Code Playgroud)

并且我的功能在手动调用时工作正常.它也以

db.commit()
Run Code Online (Sandbox Code Playgroud)

除此之外,我不知道还有什么可以让它工作,虽然我真的不了解Cron上的所有web2py书籍部分,特别是涉及到软/硬/外部cron以及所有这些.

我看到一个web2py线程,也许cron将被替换?

也许这与此有关?在配置cron之前我还需要做些什么吗?

关于如何解决这个问题的任何想法都非常感谢.

cron web2py crontab

5
推荐指数
1
解决办法
2790
查看次数

根据web2py中的其他下拉列表选择填充下拉列表的最佳做法?

我想创建一个包含下拉字段的表单.输入文本或在一个下拉列表中选择一个选项后,我想在另一个下拉列表中填充选项.

有没有最好的做法,专门使用web2py?

web2py

5
推荐指数
1
解决办法
5152
查看次数

web2py查询表达式如何工作?

我刚才有机会看看web2py框架,虽然我有一些Django的经验,而且对于普通的Python更是如此,但我无法理解web2py使用的Query系统.

让我们从web2py书中获取这个例子

db = DAL('sqlite://storage.db')
myquery = (db.mytable.myfield > 'A')
myset = db(myquery)
rows = myset.select()
for row in rows:
    print row.myfield
Run Code Online (Sandbox Code Playgroud)

在一篇SO评论中, web2py作者说,(db.mytable.myfield > 'A')它不会直接评估为True/False,而是在选择时对每一行进行实际评估.我理解这是允许这些表达式用作查询对象甚至组合的原因.

我试图在网上找到答案,但不能,所以这是我的问题:这些查询表达式如何不立即评估为True/False?为什么myquery的值不是,比如说,True?我可能缺少哪些Python功能允许它工作?

python web2py

5
推荐指数
1
解决办法
2262
查看次数

调试Web2py应用程序的不同方法

由于我是web2py的新手,所以我想知道可用于调试web2py应用程序的方法有哪些。到目前为止,我遇到了以下情况:

  1. 当web2py应用程序中发生运行时错误时,将生成错误凭单,并且该凭单中通常包含有用的信息。

  2. 但是,有时页面上仅显示简单的错误消息,例如“错误请求”。而已。那么,在这种情况下找出问题所在的最佳方法是什么?正在记录?如果是这样,我们如何正确执行呢?

  3. 如果未显示明显的错误消息,但应用程序未按预期执行。通常,我使用带有断点的调试器将其检出。还有其他建议吗?

任何经验/见解都非常欢迎。

debugging web2py

5
推荐指数
1
解决办法
1075
查看次数

有什么聪明的方法可以从 JSON 字符串中转义数据吗?

我正在向带有后端的服务器发送一些jsonrpc请求。有时,我会遇到一些我想要分析的错误。这些错误在回复中被转义,因此不容易理解。我得到这样的东西:web2pyceleryjsonrpc

{"version": "1.1", "id": "ID4", "error": {"message": "TypeError: 'NoneType' object does not support item assignment", "code": 100, "data": ["  File \"/home/myuser1/tmp/web2py/gluon/tools.py\", line 4068, in serve_jsonrpc\n    s = methods[method](*params)\n", "  File \"/home/myuser1/tmp/web2py/applications/mycompany_portal/controllers/activity.py\", line 66, in get_cdr_page\n    invalidate_cache = pars['invalidate_cache'], use_long_polling = pars['use_long_polling'])\n", "  File \"/home/myuser1/projects/new-mycompany-portal/python_modules/pmq_client.py\", line 85, in get_page\n    res = result.get(timeout=10)\n", "  File \"/home/myuser1/.virtualenvs/python2.7.2-mycompany1/lib/python2.7/site-packages/celery/result.py\", line 119, in get\n    interval=interval)\n", "  File \"/home/myuser1/.virtualenvs/python2.7.2-mycompany1/lib/python2.7/site-packages/celery/backends/amqp.py\", line 138, in wait_for\n    raise self.exception_to_python(meta['result'])\n"], "name": "JSONRPCError"}}
Run Code Online (Sandbox Code Playgroud)

我想要的是获取回复error.data的部分jsonrpc,取消转义并将其显示为堆栈跟踪。我可以手动完成(更改 …

python web2py celery

5
推荐指数
1
解决办法
5529
查看次数

使用html5运行python代码

基本上我想用HTML5创建一个性感的GUI,然后调用我在python中编写的代码.我刚刚发现了一些关于web2py的教程,但我现在从youtube上获取视频,所以我只能在回家时观看.(在家里没有互联网的学生的生活).

所以基本上我已经编写了一个python脚本,现在我想使用一个网页来与该脚本进行交互而不是像我一直在做的终端.所以我有一个网页为我的python应用程序提供GUI.

希望这更有意义.

任何帮助和方向将不胜感激.

提前致谢

html python user-interface web2py

5
推荐指数
1
解决办法
2万
查看次数

如何读取 web2py 的分析器生成的 .prof 文件?

如果我使用 -F 选项运行 web2py,它将生成一个 .prof 文件。我如何读取这个文件的内容?Hotshot似乎不起作用(我也尝试过 RunSnakeRun)。

profiling web2py

5
推荐指数
1
解决办法
1万
查看次数

如何在 web2py 中将数据从 python 传递到 javascript

我看到一些与我的查询相关的帖子。

Tornado 在下面的链接中使用 如何将变量从 python 传递到 javascript

我知道可以使用 json 来完成,但我不清楚如何实现它。在 web2py 默认控制器中,我返回一个包含纬度和经度的字典。

def index():
    lat_long_list=[]
    info1 = {'lat':'1.0032','long':'2.00003','name':'Akash'}
    info2 = {'lat':'1.2312','long':'-1.0034','name':'Kalyan'}
    lat_long_list.append(info1)
    lat_long_list.append(info2)
    return dict(lat_long_list=lat_long_list)
Run Code Online (Sandbox Code Playgroud)

在java脚本中,我想迭代字典列表并在谷歌地图上标记点。

我不能说

<script>
 {{ for lat_long_rec in lat_long_list :}}
 var name = {{=lat_long_rec['name']}}
 {{ pass }}
</script>
Run Code Online (Sandbox Code Playgroud)

这失败了。处理此问题的另一种方法是将列表写入 xml 并从 javascript 读取文件,但我不想以这种方式实现它,因为写入文件的性能不高。让我知道如何最好地实现这一目标。

javascript python web2py

5
推荐指数
1
解决办法
2088
查看次数