我对编码非常陌生,正在开发我的第一个rails应用程序。我正在使用Wordnik api来返回单词的同义词。到现在为止还挺好。只要我只使用一个单词,下面的代码就可以使用。
以下代码位于index.html.erb
<%= form_tag "/search", method: "GET" do %>
Start Smithing:
<%= text_field_tag :search_word %>
<%= submit_tag "get those synonyms" %>
以下代码位于Wordnik控制器中
class WordnikController < ApplicationController
def search
query = params[:search_word]
@words = Wordnik.word.get_related(query, :type => 'synonym').first["words"]
end
end
我正在试图弄清楚如何在搜索中输入整个短语或句子,并让API返回句子中每个单词的同义词。这将需要拆分符号,然后将每个单词分别传递到
Wordnik.word.get_related(query, :type => 'synonym').first["words"]
问题是,我不知道如何做到这一点。我试图做
query = params[:search_word].to_s.split
但这显然不起作用。
我在the Symbol documentation找不到任何内容,我在Stack Overflow上也找到了this question。
任何人都有任何想法会指引我朝着正确的方向前进吗?
答案 0 :(得分:0)
也许Wordnik不支持数组作为参数,因此您需要查询每个单词:
def search
query = params[:search_word].split
@words = query.map { |word| Wordnik.word.get_related(word, :type => 'synonym').first["words"] }
end