There was a typo that occurred in the middleware, but was also existing inside the railtie file. This has been fixed.
Gem is put back into active development. A large amount of tests are now passing with several bug fixes.
Just design changes under the hood to keep this gem working and actively maintained.
- Added batch support, for much faster intiialization of current DB or reindexing all DB.
- Dropped indexes per model, instead, using
node_auto_index
andrelationship_auto_index
, letting Neo4j auto index objects. - One
neo_save
method instead ofneo_create
andneo_update
. It takes care of inserting or updating.
Model indexes (such as users_index
) are now turned off by default. Instead, Neoid uses Neo4j's auto indexing feature.
In order to have the model indexes back, use this in your configuration:
Neoid.configure do |c|
c.enable_per_model_indexes = true
end
This will turn on for all models.
You can turn off for a specific model with:
class User < ActiveRecord::Base
include Neoid::Node
neoidable enable_model_index: false do |c|
end
end
- Releasing Neoid as a gem.
- fixed really annoying bug caused by Rails design -- Rails doesn't call
after_destroy
when assigning many to many relationships to a model, likeuser.movies = [m1, m2, m3]
oruser.update_attributes(params[:user])
where it containsparams[:user][:movie_ids]
list (say from checkboxes), but it DOES CALL after_create for the new relationships. the fix adds after_remove callback to the has_many relationships, ensuring neo4j is up to date with all changes, no matter how they were committed
- rewrote seacrch. one index for all types instead of one for type. please run neo_search_index on all of your models. search in multiple types at once with `Neoid.search(types_array, term)
- new configuration syntax (backwards compatible)
- full text search index
- create node immediately after active record create
- logging
- bug fixes
- initial release