首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以SOLR作为后端使用的最有效的前端框架是什么?

以SOLR作为后端使用的最有效的前端框架是什么?
EN

Stack Overflow用户
提问于 2010-09-02 19:46:19
回答 4查看 2.1K关注 0票数 4

希望构建一个使用SOLR作为唯一后端的web应用程序。大部分数据将通过脱机作业存储在SOLR中,尽管需要CRUD。

纵观当今流行的web框架,如Rails、Django、web2py等,尽管NoSQL,生产力的最佳之处似乎仍然围绕着活跃的记录实现坐在RDBMS之上。

在生产力方面,以SOLR为后端构建web应用程序的最佳框架是什么?

EN

回答 4

Stack Overflow用户

发布于 2010-09-02 20:25:04

web2py数据库抽象层此时不支持SOLR,这意味着您不能使用DAL语法访问SOLR,也不能使用从SOLR架构自动生成的表单。但是,您可以使用SQLFORM.factory生成表单,如果您有一个正常的关系数据库,并手动执行插入/更新/选择/更新到SOLR。web2py包含用于解析/编写JSON和XMl的库,因此可以很容易地在几行代码中实现SOLR。如果您在web2py邮件列表中提到这一点,我们可以提供一些示例帮助。

编辑(从web2py邮件列表中的答案复制):

通常在web2py中定义一个模型

代码语言:javascript
复制
db.define_table('message',Field('body'))

然后web2py为您生成和处理表单:

代码语言:javascript
复制
form=SQLFORM(db.message)
if form.accepts(request.vars):
      do_something

在您的示例中,您将不使用define_table,因为web2py DAL不支持SOLR,并且无法从模式生成表单,但是您可以安装以下内容:http://code.google.com/p/solrpy/和您可以这样做

代码语言:javascript
复制
#in model
import solr
s = solr.SolrConnection('http://example.org:8083/solr')

#in controller
form=SQLFORM.factory(Field('body'))
if form.accepts(request.vars):
      s.add(mody=request.vars.body)
      s.commit()
      do_something

因此,区别是SQLFORM.factory,而不是SQLFORM和接受后的额外行。就是这样。

票数 2
EN

Stack Overflow用户

发布于 2010-09-03 14:19:07

上述三个答案对发展框架都是很好的建议。我会绕过你的问题,问“哪个是我最好的web应用程序框架”,而不是“哪一个是最适合Solr的”,然后根据你的技能、你身边的社区以及其他软因素做出决定。尤其是当你完全不知道该走哪条路的时候。

如果你有爱Grails的朋友,并且可以帮助你开始工作,那么Grails可能是你的选择。有一个定期开会的Python小组吗?然后Django有很多东西可以提供。我个人喜欢Rails,所以我推荐rails。但这只是“我喜欢什么”和“什么是最好的”的建议。

Solr的奇妙之处在于它对前端是多么不可知论。它在这么多的环境中表现得很好!

票数 2
EN

Stack Overflow用户

发布于 2010-09-02 21:59:31

我会使用太阳黑子1.2和Rails 3。

太阳黑子通常被用作ActiveRecord扩展,但也被设计为与ORM无关的。Rails 3已经将ActiveRecord从框架中分离出来,这样就很容易完全不使用ORM了。

http://outoftime.github.com/sunspot/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3630641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档