0

我正在使用 Stanford Core NLP gem 编写一个简单的应用程序。

我的简单 HTML 表单在“/new”处有一个文本框,我在控制器中呈现视图,如下所示:

def create
    @text = Text.new(text_params)

    if @text.save
        redirect_to text_path(@text)
    else
        render "new"
    end
end

def show
    @text = Text.find(params[:id])
    @text = @text.pos_tagger(@text)
end  

只是为了检查我是否可以从 NLP 核心 gem 中获得一些输出,这是我的文本模型:

class Text < ActiveRecord::Base

def pos_tagger (text)
    require 'stanford-core-nlp'
    pipeline =  StanfordCoreNLP.load(:tokenize, :ssplit, :pos, :lemma, :parse, :ner, :dcoref)
    text = StanfordCoreNLP::Annotation.new(text)
    newtext = pipeline.annotate(text)
    return newtext
end
end

当我运行该应用程序时,一切都很好,直到我进入显示页面,当我收到以下错误时:

由 TextsController#show 处理为 HTML 参数:{"id"=>"5"} 文本加载 (0.4ms) SELECT "texts".* FROM "texts" WHERE "texts"."id" = ? 限制 1 [["id", "5"]] 跟踪/BPT 陷阱:5

并且应用程序退出。

我究竟做错了什么?

4

0 回答 0