Netbeans下使用Rails进行CRUD操作

   经过几天的接触,渐渐的发现rails是真的很强大,利用rails开发一个crud操作是一件很简单的事情。怎么,你不相信?嘿嘿,马上你就会相信了哇。

   我们来想一下,开发一个CRUD操作我们需要什么呢。要建数据库对吧。好把。那么我们先新建的数据库把。因为Rails默认的使用Mysql服务器。所以我们这里使用Mysql作为我们的服务器。我们使用命令行的方式创建数据库吧。首先来看下下面的数据库创建语句

 

CREATE DATABASE `product_development` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

 

    大家看见了,我们创建了一个名为product_development的数据库,我们在这里指定了数据库的编码格式为utf8的格式(mysql数据库的默认格式是拉丁字符)。这里指定编码的目的是解决数据库操作时候的中文乱码问题。我们必须保证页面,数据库,后台都为统一的数据格式。这里我们统一了UTF8的格式。

    创建好数据库以后,我们就需要开始创建我们的Rails的工程了。我们利用的是Netbeans进行开发。Netbeans是目前市面上支持Rails最好的一款开发工具。我们只需要在Netbeans里面点击新建项目—Ruby on Rails项目。然配置相关信息。选择相关平台,选择服务器(webrick),指定连接的数据库。按照向导的指示我们就可以创建我们的第一个rails程序。

    我们在我们的工程目录下的配置(config)文件夹下可以看见一个database.yml文件(rails号称不需要使用xml进行文件配置,NND这里用了一个yml。这个莫非是xml他儿子?我看有点像啊)。我们打开这个yml文件

 

development:
  adapter: mysql
  encoding: utf8
  database: product_development
  username: root
  password: sa
  host: localhost

 

   我们可以很容易的看出来这个配置文件所描述的内容是描述数据库的配置信息的。具体内容我就不详解了,只是说下database这个选项。rails默认的会将工程和工程名_development的数据库进行连接。我们创建的工程名是product,所以默认的该工程将会和product_development数据库进行连接。

   我们的数据库和工程都建完了,下面我们要干什么呢?对哦,我们是要说CRUD操作。没有数据表怎么行呢?我们去数据库中创建表把。NO,NO,NO。不需要那么麻烦了。Rails框架提供了migration插件(暂且这么称之为把)。利用这个migration可以很方便的创建数据库表,修改数据库表。

   假设一下我们现在需要创建一个产品表吧。我们只需要在该工程下创建一个migration。在参数栏里面填入参数createpoduct点击确定。这时候我们就可以在数据库迁移(db)目录下的看见一个migrate目录。里面包含一个_createproduct.rb的文件。打开该文件,修改该文件的内容,如下面代码所示:

 

class CreateProducts < ActiveRecord::Migration
  def self.up
    create_table :products do |t|
      t.string :name
      t.text :description
      t.timestamps
    end
  end

  def self.down
    drop_table :products
  end
end

   来分析下上面的代码吧,我们主要看下self.up这个方法。这个方法创建了一个名为products的数据表。这个表当中有如下字段name vchar ; description text ; create_time ;update_time;我们这个时候使用netbeans的数据库迁移,迁移至当前版本。我们在console下打开数据库,使用desc products就可以看见已经创建该表了。

   这个时候我们突然发现少了一个字段,假设这个商品我们需要使用价格。怎么办呢?我们需要添加一个价格字段。我们还是新建一个migration。参数填写addprice。点击确定,我们可以看见一个_add_price.rb文件。修改该文件内容:

 

class AddPrice < ActiveRecord::Migration
  def self.up
    add_column :products, :price, :decimal,
      :precision => 8,
      :scale => 2,
      :default=>0
  end

  def self.down
  end
end

   使用数据库迁移,我们就很简单的向products表当中添加了一个8位数,小数点后两位的价格字段。

 

   现在数据表有了,我们该对这个表进行操作了吧。是的,就是这样的。这里我们就要用到rails一个很强大的功能了—scaffold(脚手架)。恩,我们在Netbeans当中新建一个脚手架(sacffold)吧。模式名称就填写Product(模式是和数据表对应的,看过ORM的应该对这个都比较的熟悉,不过这里要说明的是一般rails当中的数据库表名称都是复数,而模式名称为表名称的单数形式,且首字母大写),在参数栏里面填写name:string description:text price:float点击确定。我们就创建好了一个脚手架。

   到现在为止,我们已经完成了一个CRUD的大部分操作了。怎么?你还是不相信?那么请你运行你的服务器。在浏览器的地址当中输入

 

http://localhost:3000/products

 恩,看到结果了吧。ROR就是这么强大

097634e9169c6777120550ad61afb6bc-1.jpg 立即下载

相关推荐

智能体式AI漫游指南中文版

智能体式AI漫游指南中文版、智能体式AI指南英文原版

NetBeans Platform CURD应用程序教程

本教程介绍了如何将 Java DB 数据库集成到 NetBeans 平台应用程序中。我们先从分析 Java DB 数据库入手,将通过这些数据库创建实体类。但请注意,这些说明并非仅适用于 Java DB。对于 NetBeans IDE 所支持的任何关系数据库,这些说明均适用。接下来,我们将把这些实体类和相关 JPA JAR 的模块一起包装到一个模块中。 在以上模块成为应用程序的一部分之后,我们将创建一个为应用程序提供用户界面的新模块。该新模块将为用户提供一个显示数据库中数据的树状分层结构。然后,我们将创建另

w345731923的专栏 874

国央企如何利用AI工具提升科技创新项目管理与成果转化能力?.docx

国央企如何利用AI工具提升科技创新项目管理与成果转化能力?

NetBeans + Rails 2.0开发最简单的 CRUD

接触ROR不到1周.希望给同样想接触rails的EYE友们一个借鉴. 呵呵rails高手们..就...不用往下看咯...     NetBeans IDE 开发环境 产品版本: NetBeans IDE 6.1 (Build 200805300101) Java: 1.6.0_02; Java HotSpot(TM) Client VM 1.6.0_02-b06 可以去Netbeans 中...

juzhibest的专栏 165

融合高斯扰动与竞争学习的改进型多目标部落竞争与成员合作算法(IMOCTCM)求解DTLZ1-DTLZ7及-盘式制动器设计研究(Matlab代码实现)

内容概要:本文档名为《Plecs全桥LLC谐振变换器仿真模型.txt》,但实际内容并非聚焦于该主题,而是一份涵盖多个科研领域的Matlab/Simulink仿真资源汇总清单。文档列举了包括多目标优化算法(如IMOCTCM、MOWAA)、电力电子变换器控制(如LLC谐振变换器、DAB变换器)、电机控制(如PMSM无感控制)、状态估计(如卡尔曼滤波)、微电网调度、无人机路径规划、图像处理、信号处理等多个方向的仿真研究课题,涉及Matlab、Python、Simulink、PSCAD等多种工具和编程语言。文档末尾频繁出现“完整资源下载:公众号——荔枝科研社”及百度网盘链接,表明其核心用途是推广和分享一系列科研仿真资料,服务于学术交流与资源共享。; 适合人群:适用于电气工程、自动化、控制科学与工程、电力系统、电子信息、机械电子、计算机科学等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①为科研工作者提供丰富的Matlab/Simulink仿真案例参考和技术实现思路;②辅助高校师生完成课程设计、毕业设计或学术论文复现工作;③通过获取开源共享资源加速个人或团队的项目开发与算法验证进程。; 阅读建议:该文档属于资源目录性质,缺乏连贯的技术论述与逻辑结构,建议使用者根据自身研究方向筛选相关条目,结合提供的代码和模型进行学习与实践,并注意核实所下载资源的有效性、完整性以及代码运行环境的兼容性。

昆仑通态,自由串口通讯

软件默认无该功能,需要问客服索要扩展包。

cfqq1989的博客 1540

一个简单rails应用的开发过程

基本环境: rails2.3.8 ruby1.9.1 netbeans for ruby 6.8 webrick windows xp 参考: [url]http://netbeans.org/download/flash/jruby_on_rails/jruby_on_rails.html[/url] 《应用rails进行敏捷Web开发第三版》 本来是不太想写的,因为大...

qiuqiuit的专栏 191

第5.1节 构网控制:电压源特性与电压调节

摘要: 构网型变流器的核心物理本质是作为可控交流电压源,通过戴维南等效模型(受控电势源+低输出阻抗)自主建立并调节电压,增强电网电压刚度。其电压调节通过无功-电压闭环控制实现,内环为自动电压调节器(AVR),外环为无功-电压下垂特性,模拟同步发电机功能。关键技术包括自适应增益、虚拟阻抗补偿及动态限流策略,以应对弱电网稳定性、故障过流等问题。该设计满足《规范》对电压调节范围、动态无功支撑的要求,是高比例新能源电力系统电压稳定的关键解决方案。

技术工作者 1110

Ruby On Rails 安装手记

弄了好几天,Ror环境终于搭好了,为了防止以后忘记,少走弯路,特记录下 ============================================= 安装过程 1、安装 rubyinstaller-1.9.2 2、安装 执行 gem install rails 3、安装 dev kit 下载后 解压到ruby 的安装目录 4、安装Netbeans 6.9....

weixin_30832983的博客 125

智能汽车域控制器FOTA升级方案探讨

上文提到的Entry属性,包括Active 属性, Bootable 属性, Successful 属性, Retrycnt 属性 ,Active 属性用于标志槽的优先级,bootloader优先选择Active 属性=1的槽启动,Bootable 属性标志槽可否可启动,Successful 属性标志槽是否成功启动过,Retrycnt 属性标志槽可尝试启动的次数。芯片启动后,首先进入Bootloader阶段,此阶段将读取存储系统的分区属性,根据属性值进行逻辑判断,并确定进入哪个分区,详见流程图。

huibian1234的博客 1570

pyecharts在jupyter notebook中不能够渲染图表问题。

在使用jupyter notebook中使用pyecharts绘制可视化图表的时候,发现图表不能渲染到页面中,生成的html是没问题的,本文主要解决在jupyter notebook中不能渲染这个问题。

猿小白的博客 1167

关注NetBeans6 关注Ruby on Rails

NetBean6来了,即将推出的Stable版本实在值得期待,这几天一直看到大家对它的高度评价: http://www.iteye.com/topic/56190,不知道NetBeans6能否完成本年度与Eclipse平分IDE市场这一壮举,5月份才出Beta版,看来NetBeans想出个壮举还得一段时间咯,不过为了良好的质量这个也是值得的。但是它实在是值得现在就开始投资学习使用的一个IDE,去年...

yueguangyuan的专栏 196

STM32实现简单的智能电子相框

具体的代码案例和详细的代码实现超过5000字,无法在此篇文章中提供。但是,你可以参考STM32的官方文档和相应的图形库和多媒体库的文档,以获得更详细的实现细节和代码示例。对于硬件,我们可以选择使用STM32开发板,如STM32F4 Discovery。对于软件开发环境,我们将使用Keil MDK-ARM作为开发工具,并使用STM32CubeMX进行代码配置。在本文中,我们将使用STM32单片机实现一个简单的智能电子相框,包括显示照片、播放视频和音乐功能。接下来,我们将详细描述实现智能电子相框的步骤。

2401_85625565的博客 1006

10分钟用NetBeans Ruby6.0 编写一个weblog

 在JavaEye上看到的一个链接.说NetBeans出到M9了.直接支持ruby.立刻到所给的链接看了一下...哈哈.一个不错的教程.不敢独享..马上拿来给大家分享一下~~ 来源地址 :    http://www.netbeans.org/kb/60/rapid-ruby-weblog.htmlCreating a Ruby Weblog in 10 MinutesContri

冰蓝的小小Blog 2451

基于YOLOv5/v8/v10的垃圾分类识别系统:设计实现与性能优化(附代码+数据集)

做完这个毕设,你已经掌握了从数据准备、模型训练到界面开发的全流程。把模型部署到树莓派上,做个真正的“智能垃圾桶”硬件装置;加入语音提示功能,检测到垃圾后自动语音播报类别;试试融合多个YOLO模型的优势,让分类精度再上一个台阶。按照这个教程一步步做,你的毕设不仅能顺利完成,还能做出很多亮点。要是过程中遇到啥问题,别慌,慢慢琢磨或者咱们一起聊聊,肯定能把这个毕设做成让你满意的作品。

know_F0727的博客 463

Linux内核驱动模型--PCIe(PCI Express)驱动​​

本文系统介绍了Linux内核中PCIe驱动的设计与实现。首先从架构定位入手,指出PCIe驱动基于PCI子系统扩展支持高速、低功耗特性。核心数据结构struct pci_driver包含设备匹配表id_table、生命周期函数probe/remove等关键组件。文章详细解析了驱动与设备的绑定流程、资源管理机制,并重点阐述了MSI-X中断、电源管理、热插拔和多队列等高级特性实现方案。最后提供了lspci、dmesg等调试工具的使用方法,总结了PCIe驱动在支持高性能设备中的关键作用。全文通过架构设计、核心结构、

amy_mhd的博客 428

NetBeans 时事通讯(刊号 # 106 - Jun 17, 2010)

刊号 # 106 - Jun 17, 2010 项目新闻 NetBeans 社区对 NetBeans IDE 6.9 的认可 我们高兴地宣布 NetBeans IDE 6.9 社区认可调查的结果:88% 的反馈者对 NetBeans IDE 6.9 将被发布给予了绿灯!非常感谢社区对这次活动所做的价值和令人鼓舞反馈! 获取调...

weixin_34348805的博客 98

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

NetBeans Weekly Newsletter - Issue # 443 - Jun 16, 2010

2010-06-17 聪明的编码方式—— NetBeans 6.9 现在可以下载! NetBeans IDE 6.9 现在可以下载! 可以对 JavaFX Composer, OSGi互用性,PHP Zend,Ruby on Rails 3.0 等进行支持。 今天下载新发布的版本,你就可以用聪明的方式进行编码! NetBeans IDE 6.9 特性 NetBeans 6.9 ...

buliedian 104

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

10分钟内创建一个 Ruby 博客程序

<br /><br />(源自:http://www.netbeans.org/kb/60/ruby/rapid-ruby-weblog_zh_CN.html)10分钟内创建一个 Ruby 博客程序<br />作者:Brian Leonard<br />2007 年 9 月 [修订编号:V 6.0-4]<br />在本教程中,我将利用 NetBeans IDE 对 Ruby 的支持创建一个简单的 Web 应用程序。本文将演示如何创建一个 Ruby 博客程序。您将遵循这些基本流程创建模型、添加控制器并生成视窗

有家客栈 君子不器 635

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

ruby博客系统开发-----NetBeans篇

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34361881的博客 283

混合 Java 和 Ruby 应用程序

<br />(源自:http://www.netbeans.org/kb/60/ruby/java-ruby_zh_CN.html)混合 Java 和 Ruby 应用程序<br />撰稿人: Beth Stearns Beth Stearns <br />2007 年 10 月[修订号:V6.0-1]<br />本文适用于 NetBeans IDE 6.0 发行版<br />本文将演示如何使用 NetBeans IDE 结合 Ruby 和 Java 应用程序。 <br />内容- 本文需求- 创建 Java

有家客栈 君子不器 669
上一篇: Beginning Ruby
下一篇: Beginning lucene
refactaar
博客等级 码龄17年 0粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值