我正在开发一个搜索页面,允许用户搜索待售房屋.典型的搜索条件包括价格/邮政编码/#卧室/等.
我想允许用户将此标准保存在数据库中,并每天通过电子邮件发送新家.
我可以:
1)将"SavedSearch"对象序列化为字符串并将其保存到数据库,然后根据需要进行反序列化.
2)在tblSavedSearch中有一个与搜索条件对应的列表 - price/zip /#bedrooms/etc.
我担心如果我选择选项1,我保存的搜索条件将会更改并使数据库中的searialized对象无效,但选项2也不是最佳解决方案.
其他人如何解决这个问题?
我假设您需要每天重新运行搜索,以便找到结果的新增内容.也许可以确保搜索表单指定了一个get方法,以便将搜索条件作为查询字符串附加到url,然后将整个查询字符串保存在数据库中.
因此,如果您有一个名为search.action的搜索程序,您将按如下方式请求搜索:
search.action?price=20000&rooms=3
您可以将price = 20000&rooms = 3部分保存到数据库中.要检索此搜索,只需将查询字符串附加到网址并再次请求搜索页面.
唯一需要注意的是,当搜索操作发生变化时,您必须进行智能默认设置以避免破坏旧搜索.例如,假设您开始按颜色搜索,旧的搜索都不会有颜色标准,因此您的搜索操作必须满足此要求,并确保使用合适的内容,例如所有颜色.