On 30-May-07, at 12:43 PM, Erik Hatcher wrote:
On May 29, 2007, at 4:38 PM, Mike Klaas wrote:
I agree. I was not aware of field boosts at the time. I'll code
this change.
Unfortunately, it is still somewhat awkward. In my python client
I end up passing (<name>, <value>, <field boost or None>)
everywhere, but that clutters up the api considerably.
It might be worth taking a look at the ruby client to see what
Eric's done for the api.
In the ruby client, we have the ability to use a Ruby Hash as a
document when no boosts are needed:
doc = {:field => "value"}
But also use the Field object when boosts are desired:
doc = Solr::Document.new
doc << Solr::Field.new(:field => "value", :boost => 3.0)
The boost stuff was contributed by Coda Hale (credit where it's
due :) - I had punted on that initially.
I think I prefer the approach that I suggested for the python
client. The ruby approach makes sense if you want to define a proper
Document class with Fields and such. 99% of the time a map is
sufficient, and tuple fieldname keys allow maps to be slightly
extended to support boost functionality.
-Mike