Как читать файлы epub на рельсах? - PullRequest
0 голосов
/ 23 декабря 2018

То, что я хотел бы сделать, это загрузить файлы epub в мое приложение.Тогда я мог бы ввести слово, и оно будет отображать все предложения, где это слово появляется.Я пытаюсь запустить этот гем: https://github.com/KitaitiMakoto/epub-search

Но я не могу понять, как использовать его в приложении rails.Мне удается получить результаты в терминале, но когда я пытаюсь запустить метод в контроллере и отображать его в виде, я получаю это сообщение об ошибке:

Groonga::InvalidArgument in Home#index

Showing /home/louvivien/vivien/Camus/app/views/home/index.html.erb where line #7 raised:

invalid argument: [table][create] db not initialized: #<Groonga::Hash id: <2147483651>, name: (anonymous), path: (temporary), domain: (256), range: (nil), flags: <WITH_SUBREC>, size: <4>, encoding: <:utf8>, default_tokenizer: (nil), token_filters: [], normalizer: (nil)>
db.c:1078: grn_table_create_with_max_n_subrecs()

В терминале я вижу результаты.

Знаете ли вы, что я могу исправить эту ошибку?

Это мой контроллер:

def index()
    color=$stdout.tty?
     highlight = [true, 'always'].include? color
    highlight = $stdout.tty? if color == 'auto'
    @db = EPUB::Search::Database.new('./lib/epub-search/db')
    @word = "condition"

    @result = @db.search @word do |result|
      EPUB::Search::Formatter::CLI.new(result, @word, highlight).format
                        end      
             end
...