php – 使用带有ORM的Sphinx搜索
我正在寻找在我们的网站内实施Sphinx搜索.
与使用包含新库等做出奇怪的事情不同,使用SphinxQL对它进行集成更有意义,因为这与本机SQL非常接近 为了防止这种情况,我想将Sphinx拖入我们的ORM系统. 有没有人曾经尝试过这个,或者我们可能遇到的任何问题都可以做到这一点? 我们目前使用Zend Framework和Propel的混合 解决方法
很长时间在这里推动用户最近使用Zend Framework将Sphinx添加到我们的应用程序中.
关于Propel和MVC的注意事项 我在过去几个月的发展过程中注意到的是,我希望我能更直接地利用Propel提供的抽象.您可能知道,Propel为ORM创建基类以及只是扩展基类的空类. 目前,许多业务逻辑依赖于单独的模型,而完全相同的逻辑可以简单地实现为扩展的Propel类中的方法. 你应该采用相同的方法来实现Sphinx搜索.尝试使用扩展的ORM类来抽象它. 关于狮身人面像的注释 >创建视图以简化索引:Sphinx无法与高级子查询一起使用,并且很容易被MySQL函数搞糊涂.尝试抽象您想要索引的数据,以便总SQL与SELECT id,field1,field2,field3 FROM MyView一样简单.当您可能希望将每个Sphinx文档与用户帐户或其他一些非常重要的外键关系相关联时,这尤其有用. $a = AQuery :: create() 在foreach循环中.但在某些情况下,依靠ORM获取列表可能效率太低,特别是如果您只想列出几列,例如搜索结果.然后,您可以使用自定义优化的SQL选择来获取信息(可以在Propel类中执行). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |