有没有办法为现有的数据库自动生成Rails API?我有来自php项目的mysql DB,我需要为它生成REST API。
发布于 2014-09-15 23:29:49
使用Rails4,您可以使用scaffold,注意保持数据模型与旧数据库完全一样(即。相同的表名和列名),然后删除使用scaffold生成的迁移。
假设您有一个名为Posts的表,其中有两列: subject和body。
你可以运行:
rails g scaffold post subject:string body:text然后从db/migrate中删除迁移。
现在假设您将rails应用程序设置为通过config/database.yml正确访问数据库,那么您应该已经设置好了json API,并且可以使用了,因为rails scaffold会为您搭建的每个资源生成index.json.jbuilder和show.json.jbuilder。
您可能必须编辑应用程序控制器以允许外部应用程序接口请求,但只有当您计划通过POSTing访问您的应用程序接口时,这才是重要的:
如果你确实需要发布,那么在你的应用程序的顶部修改这一行/控制器/应用程序_控制器.rb:
# Prevent CSRF attacks by raising an exception.
# For APIs, you may want to use :null_session instead.
protect_from_forgery with: :exception要这样做:
protect_from_forgery with: :null_sessionGET请求应该在不修改应用程序控制器的情况下工作。
忘了提一下,要访问这些资源,您将使用?format=json作为参数,因此:
http://localhost:3000/posts?format=json或
http://localhost:3000/posts/1?format=json将返回所有帖子或单个帖子的json响应。
发布于 2015-04-21 19:26:14
你可以使用AutomaticApiRest automaticapirest.info,这个项目是我去年创建的。基本上,这个工具允许在几秒钟内创建一个API REST数据库(MySQL)。
特性
安装
git将其克隆到文件中(对于Apache).
完成/var/www/YourWebPage/ config.php中的所有字段
发布于 2020-06-17 23:53:06
您可以使用任何Node.js数据库(MySQL、MSSQL、SQL Server、Aurora、PostgreSQL和SQLite)。我是该项目的核心提交者之一。
安装CLI工具(使用以下命令从npm全局xc-cli):
npm install -g xc-cli然后,只需使用以下命令即可创建工程:
xc new <project_name>注意:它将提示输入数据库连接详细信息,只需输入连接详细信息,它将执行其余的代码生成。您必须安装图形用户界面工具才能进行代码生成(从此处下载:
有关更多信息,请参阅GitHub存储库:https://github.com/xgenecloud/xgenecloud
有关文档,请参阅:http://docs.xgenecloud.com/
https://stackoverflow.com/questions/25850150
复制相似问题