doctrine / search Goto Github PK
View Code? Open in Web Editor NEWGeneric Search extension for indexing and querying ODM/ORM objects with different text-search engine implementations
Home Page: http://www.doctrine-project.org
License: MIT License
Generic Search extension for indexing and querying ODM/ORM objects with different text-search engine implementations
Home Page: http://www.doctrine-project.org
License: MIT License
https://github.com/dstendardi/Ariadne
maybe a source of inspiration.
Can you tell me, why you will using the Buzz library?
Hello,
I am using this library for persisting Doctrine entities in Elasticsearch using Doctrine life cycle events. I have two types: images and photographers. Photographers are set as parent of images. Here are their mappings:
{
"my_search" : {
"mappings" : {
"photographers" : {
"properties" : {
"fullName" : {
"type" : "string",
"include_in_all" : true
}
}
},
"images" : {
"_parent" : {
"type" : "photographers"
},
"_routing" : {
"required" : true
},
"properties" : {
"description" : {
"type" : "string",
"include_in_all" : true
},
"headline" : {
"type" : "string",
"include_in_all" : true
}
}
}
}
}
}
On image postPersist/postUpdate this exception is thrown:
Elastica\Exception\ResponseException
File:
/var/www/search/vendor/ruflin/elastica/lib/Elastica/Transport/Http.php:146
Message:
RoutingMissingException[routing is required for [my_search]/[images]/[86]]
I use the same annotations like the entities in the demo folder of the library. The demo works fine, but my code doesn't.
Can someone give me a hint what could be the problem? Any help will be appreciated!
Thanks in advance.
Instead of reinvent the wheel i think it would be better to use third party libraries like solarium and elastica.
@mikelohmann what do you think?
The database should be able to generate entity ids which are set back on the object after persistence.
We should integrate travis-ci.
@mikelohmann What do you think?
API as described here: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-update.html
Hi, this is an interesting project. how does this project relate to https://github.com/FriendsOfSymfony/FOSElasticaBundle/tree/master/Doctrine ? we where just discussing phpcr-odm and FOSElasticaBundle integration in IRC...
Does this library support Spatial Search?
http://wiki.apache.org/solr/SpatialSearch
Thanks!
Seems like a similar client exists with very similar interfaces. https://github.com/lphuberdeau/Neo4j-PHP-OGM
Many files have a phpdoc error.
It would be nice to implement the XML and yaml support.
Why this project is dead? Which way are you using to search?
It is possible to support classic relational ManyToMany, ManyToOne, OneToMany by adding event subscribers which handle this before flushing entities. How about taking this into the lib by extending with doctrine annotations and instead of event subscribers, check for these relations right before flushing.
Advantage: You do not have to write your own subscriber. Although there are possibilities like nested
documents etc. there are some cases where you definitely need classical relational relationships and you need some mechanism to update everything automatically instead of doing it all yourself. Like the usual doctrine behaviour.
Change the licence from LGPL to MIT.
All authors has agreed.
http://dlm.beberlei.de/licenses/authors?project=11
Hello,
I would like to use Doctrine Paginator with the search query. Is it possible to combine it with the hydration query and how can I do it?
Thank you in advance!
For stricter configuration of mappings according to these options: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping-core-types.html
There seems to be an error within the /Buzz/lib/Buzz/Client/FileGetContents.php when executing the Doctrine/Search/Http/Client/BuzzTest.php. Therefor I just commented out the BuzzTest::testCallNotExistingHost-Test to commit my changes.
/Users/mikelohmann/Sites/doctrine-search.local/search/lib/vendor/Buzz/lib/Buzz/Client/FileGetContents.php:49
/Users/mikelohmann/Sites/doctrine-search.local/search/lib/vendor/Buzz/lib/Buzz/Browser.php:87
/Users/mikelohmann/Sites/doctrine-search.local/search/lib/vendor/Buzz/lib/Buzz/Browser.php:66
/Users/mikelohmann/Sites/doctrine-search.local/search/lib/Doctrine/Search/Http/Client/BuzzClient.php:53
/Users/mikelohmann/Sites/doctrine-search.local/search/tests/Doctrine/Search/Http/Client/BuzzTest.php:41
The ClassMetadata should be used to hold all meta-data of a document regarding search parameters.
If you write an event subscriber for the preFlush
event, you only get the SearchManager
as argument. Unfortunately the search manager isn't capable of returning the entities which will get flushed. I need them to interact with them before flushing them. Can this be implemented somehow or isn't it supposed to be that way? How do you get your entities in an event subscriber in general?
Edit: Just looked up the source of doctrine. You can get the unit of work by the search manager. And the doctrine unit of work has a function for returning entities, but not the doctrine/search unit of work: http://www.doctrine-project.org/api/orm/2.4/source-class-Doctrine.ORM.UnitOfWork.html#_getIdentityMap
Would it be possible to implement that or can I do a pull request?
just wanted to open this as a ticket. i think it totally makes sense to use Buzz right now. but once all the core pieces are in place, we should review once more if we cannot simple move the CouchDB ODM HTTP client to common along with an interface and potentially a few adaptors for popular http clients.
The identify map used by the UnitOfWork should be unified into a single new class or array with appropriate accessors
Like in the ODM/ORM test-documents/entities should be used to test the annotation syntax.
There are some todos in CurlClient which needs to be fixed.
I know this is an old project and a prototype but I have been using it for my application with ElasticSearch and it is working very well. I am very pleased with it.
I would like to make is to that the Index can be specified by other means rather than in Annotations on the model. I have looked at the code and seen that this creation is quite a long way along the code path. Do you have any suggestions on the easiest way to pass in the index name as a variable rather than in the annotation?
I hope that makes sense.
Thanks, Russell
Within the constructor of BuzzClient the new BuzzBrowser is used.
Hi, I am wondering if anyone can provide a working example with doctrine/search, maybe someone of the guys who forked this repo as it seems that it is not maintained anymore?!
Unfortunately the documentation in the readme does not work. Thanks a lot :-)
Move the folder /library/Doctrine/Search/sandbox
to /sandbox
I think it was useful to create constants for the request methods.
const METHOD_HEAD = 'head';
const METHOD_GET = 'get';
const METHOD_POST = 'post';
Filtered queries are more performant and cachable than post_filters on queries
Currently UnitOfWork contains Elastica specific couplings. These need to be abstracted to enable support for other databases and client libraries.
I would like to contribute to that project, because I'm looking forward that this will become more than a prototype.
Anything else todo besides the @todo things ?
Greetings :)
Limit support to ElasticSearch and Solr for the time being. It should be possible to support different client libs on each platform
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.