我正在尝试访问我的rails应用程序中的另一个数据库,以及使用SQL语句查询该数据库并返回JSON。
主数据库和辅助数据库位于运行MySQL的同一服务器上。测试时,看看这是否只起到以下作用:
datagbase.yml文件:
development:
adapter: mysql2
encoding: utf8
database: onlineportal
username: root
password:
host: 127.0.0.1
port: 3306
socket:
android_mobile_developement:
adapter: mysql2
encoding: utf8
database: androidchatterdatabase
username: root
password:
host: 127.0.0.1
port: 3306
socket:
但随后在控制器中构建该方法:
class RequestsController < ApplicationController
def getActivatedFriends
@results = User.find_by_sql("SELECT
a.id
, a.username
, a.phoneNumber
FROM androidchatterdatabase.users a
WHERE phoneNumber in (8754444444) and
removed = 0 and
is_user = 1;")
respond_to do |format|
format.html
format.json { render json: { friends_match: @results }}
end
end
并调用路由:
localhost:3000/getActivatedFriends/
从路线:
match '/getActivatedFriends/', to: 'requests#getActivatedFriends', via: 'get'
产生误差:
Missing template requests/getActivatedFriends, application/getActivatedFriends with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :raw, :ruby, :coffee, :jbuilder]}.