2013-08-04 226 views
1

我创建了一个新的MySQL数据库应用程序通过Ruby控制台得到下述命令创建控制器

rails new -demo -d mysql 

然后,我创建了1台通过MySQL的编辑器。在Ruby控制台中,我启动了rails服务器并正常工作(检查localhost:3000)。现在我无法为此表创建控制器类。我尝试了许多在网上给出的命令,但似乎没有任何工作。

红宝石命令控制台我切换到轨控制台得到下述命令

rails console 

然后我进入下面的命令来创建控制器类这又回到零

irb(main):003:0> class CategoryController < ApplicationController 
irb(main):004:1> def index 
irb(main):005:2> end 
irb(main):006:1> def show 
irb(main):007:2> end 
irb(main):008:1> end 
=> nil 

,但得到没有产生这样的类在我的应用程序的应用/控制器文件夹。

我读了一些教程,并且提到控制器类会自动在rails中创建。我也尝试过,但他们没跑。

我不知道我是否缺少一些东西。有人可以帮助指导进一步的步骤。我只在服务器端使用ROR。我的Android应用程序将使用此数据库。

如果有人可以提供相关的初级教程或使用ROR进行服务器端MySQL编程的示例示例,这将非常有帮助。

谢谢。

+1

什么书或网站你从中学习?我建议通过[Rails教程](http://ruby.railstutorial.org)工作,这对Rails的新人很有帮助。 – Bert

+0

感谢伯特的链接。 – Gaurav

回答

1

Rails控制台用于在运行时测试代码,而不是生成实际存储在要再次使用的文件中的代码。产生控制器的正确方式是通过rails generate controller命令从您的系统的命令行(而不是从Rails的控制台或irb):

这将两个动作,index, show创建CategoryController文件。您可以省略这些操作或添加其他操作。

rails generate controller CategoryController index show 

这将导致输出类似于下面的内容,假设所有的gem依赖关系都正确满足。

create app/controllers/category_controller_controller.rb 
    route get "category_controller/show" 
    route get "category_controller/index" 
    invoke erb 
    create app/views/category_controller 
    create app/views/category_controller/index.html.erb 
    create app/views/category_controller/show.html.erb 
    invoke test_unit 
    create test/controllers/category_controller_controller_test.rb 
    invoke helper 
    create app/helpers/category_controller_helper.rb 
    invoke test_unit 
    create  test/helpers/category_controller_helper_test.rb 
    invoke assets 
    invoke js 
    create  app/assets/javascripts/category_controller.js 
    invoke scss 
    create  app/assets/stylesheets/category_controller.css.scss 
+0

谢谢了。在这里张贴之前,我挣扎了将近5-6个小时。我想现在它工作。执行命令并获得o/p。再次感谢。 – Gaurav