GithubHelp home page GithubHelp logo

sphinx-search-propel-bundle's Introduction

SphinxSearchPropelBundle

Scrutinizer Code Quality Build Status

Symfony2. Sphinx search this site with the use Propel ORM

Installation

Добавьте ItBlasterSphinxSearchPropelBundle в composer.json:

{
    "require": {
        "it-blaster/sphinx-search-propel-bundle": "dev-master"
	},
}

Теперь запустите композер, чтобы скачать бандл командой:

$ php composer.phar update it-blaster/sphinx-search-propel-bundle

Композер установит бандл в папку проекта vendor/it-blaster/sphinx-search-propel-bundle.

Далее подключите бандл в ядре AppKernel.php:

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new ItBlaster\SphinxSearchPropelBundle\ItBlasterSphinxSearchPropelBundle(),
    );
}

В файл app/config/config.yml добавьте настройки бандла:

it_blaster_sphinx_search_propel:
     searchd:
         # Хост для подключения к демону Sphinxc
         host: localhost
         # Порт для подключения к демону Sphinx
         port: %sphinx_port%
         # Файл сокета, если нужно подключаться к демону через сокет
         #socket: /path/to/socket.file
     indexes:
         # Список индексов Sphinx (ключ) и имен Entity (значение)
         # которые будут использоваться при поиске
        newsIndex: "App\MyBundle\Model\\NewsQuery"

В секции indexes будут перечислены все сущности, по которым будет осуществляться поиск.

Скопируйте из папки бандла ap/config файл sphinx.conf.dist в папку проекта app/config/sphinx.conf и пропишите нужные конфиги для индексов. В файле sphinx.conf.dist прописаны конфиги индексов для сущности Новости.

Usage

Добавьте в .gitigmore папку app/data/*, в ней будут храниться индексы sphinx'а. Сам sphinx нужные ему папки создать не может, поэтому создаём их руками: mkdir app/data && mkdir app/data/sphinx && mkdir app/data/sphinx/indexes && mkdir app/logs/sphinx && chmod -R 777 app/data app/logs/

Команды для работы с sphinx'ом:

  1. Проиндексировать: indexer --config app/config/sphinx.conf --All --rotate
  2. Запустить поиск: searchd -c app/config/sphinx.conf

app/config/sphinx.conf - путь до файла с конфигом sphinx'а

Вначале выполняем 1ую команду. Если всё ок (т.е. нет ошибок в консоли), выполняем 2ую.

sphinx-search-propel-bundle's People

Contributors

antonsmolin avatar 0x2f8f avatar

Stargazers

Mo Prosper avatar

Watchers

Evgeny Anoikin avatar James Cloos avatar  avatar John Doe avatar Andrey avatar Iaroslav Gashuk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.