我在硕士学位的时候就有一些信息检索方面的背景。现在我想把它用于为一本用阿拉伯语写的书构建文档搜索应用程序。在
我的主要工具是Django和PostgreSQL或MySQL,这取决于这里发布的建议。在
我已经在美国用Django开发了5年,但从未需要国际化或任何Unicode支持。所以我的问题是,如何处理阿拉伯语单词。在
我的流程如下:
1)我有一些.html文件,其中有几行阿拉伯单词。我将构建一个解析器/标记器/词干分析器并存储到数据库
2)当用户输入一个单词进行搜索时,我会将其词干,并与我的数据库进行比较。在
我需要的帮助是:
1)词干/单词/行是作为阿拉伯语单词还是python unicode字符串存储在数据库中
2)如果我将它们存储为阿拉伯语单词,最好是PostgreSQL或MySQL,以及如何支持阿拉伯语。在
3)如果我将它们存储为unicode字符串,django管理员会将它们显示为阿拉伯语单词吗。因为如果是这样的话,那就足够了。另外,管理员可以支持阿拉伯语吗?一、 如果我想更改数据库中的某些内容,可以通过管理员完成吗。在
4)如何让Django ORM支持存储解析器将输出的阿拉伯语单词?在
我在Django工作了两年,在我的应用程序中经常使用希伯来语文本(无论是在html还是服务器端)。我发现Django非常擅长国际化和使用unicode(坦率地说,Django比python更出色)。在
只要遵循以下几点建议,你可能会没事的:
对于应用程序中包含外来字符的每个.py文件,请确保在文件顶部添加一个utf-8bash:
# encoding=utf-8
当使用带阿拉伯字符的字符串时,一定要在字符串前面加一个小u。一定要时刻牢记这一点。无论何时使用字符串:
第一次创建数据库时,请确保使用正确的utf-8保存它(}应该可以)。
Database Chartset = utf8
和{确保所有显示阿拉伯语的页面在html中都有这个meta标记(最好在基本.html文件并使所有模板都继承它):
<meta charset='utf-8'>
通常应该是这样。是啊,我知道,通常外国角色都很让人头疼,对吧?不是和Django在一起。在
相关问题 更多 >
编程相关推荐