Ruby on rails 3 与文本字段的简单表单关联

Ruby on rails 3 与文本字段的简单表单关联,ruby-on-rails-3,Ruby On Rails 3,我有一个Rails应用程序正在使用。我有两个相关的模型,交易和股票。在交易表单中,我希望用户能够在文本字段中输入他们的股票代码。目前,我正在使用关联函数来呈现一个选择框。问题是我想要一个文本字段,因为我有大约一千只股票可供选择 有没有一种方法我可以用简单的形式或不用简单的形式来做这件事 模型: 新贸易的形式 您应该能够使用以下语法: <%= f.input :stock_id, :label => 'Enter your ticker:' %> 然后,您可以将以下内容显示为

我有一个Rails应用程序正在使用。我有两个相关的模型,交易和股票。在交易表单中,我希望用户能够在文本字段中输入他们的股票代码。目前,我正在使用关联函数来呈现一个选择框。问题是我想要一个文本字段,因为我有大约一千只股票可供选择

有没有一种方法我可以用简单的形式或不用简单的形式来做这件事

模型:

新贸易的形式


您应该能够使用以下语法:

 <%= f.input :stock_id, :label => 'Enter your ticker:' %>
然后,您可以将以下内容显示为自动完成结果:

AAPL - Apple Inc
IBM - International Business Machines
并允许用户选择一个他们正在寻找的。在幕后捕获:id并将其用作关联的:stock_id

您需要添加一个stocks\u控制器操作,该操作使用字符串并根据部分股票代码查找股票,并返回最大数量的股票,如20

def search
  ticker_query = "%#{params[:ticker]}%"
  stocks = Stock.where('ticker LIKE ?', ticker_query).limit(20)
  render :json => stocks
end

谢谢你,马特。我确实尝试过这样的东西,但没能成功。根据您提供的代码,我在我的表单中添加了“输入您的股票代码:”>,但我不确定如何将其连接到stockssearch和autocomplete。谢谢,马特。我今晚会跟进更多细节。
[{:ticker => 'AAPL', :name => 'Apple Inc', :id => 1}, {:ticker => 'IBM', :name => 'International Business Machines', :id => 2}, etc ]
AAPL - Apple Inc
IBM - International Business Machines
def search
  ticker_query = "%#{params[:ticker]}%"
  stocks = Stock.where('ticker LIKE ?', ticker_query).limit(20)
  render :json => stocks
end