diff --git rails-scripts.el rails-scripts.el
index a1cb066..cb21c25 100644
--- a/rails-scripts.el
+++ b/rails-scripts.el
@@ -243,8 +243,10 @@ BUFFER-MAJOR-MODE and process-sentinel SENTINEL."
                                       'rails-script:history-of-generate nil))
   (let ((name (intern (concat "rails-script:generate-"
                               (replace-regexp-in-string "_" "-" what)))))
-    (when (fboundp name)
-      (call-interactively name))))
+    (if (fboundp name)
+	(call-interactively name)
+	(rails-script:generic-generate what
+				       (completing-read "Generate: " nil nil)))))
 
 (defmacro rails-script:gen-generate-function (name &optional completion completion-arg)
   (let ((func (intern (format "rails-script:generate-%s" name)))
@@ -263,6 +265,10 @@ BUFFER-MAJOR-MODE and process-sentinel SENTINEL."
        (when (string-not-empty ,param)
          (rails-script:run-generate ,(replace-regexp-in-string "-" "_" name) ,param)))))
 
+(defun rails-script:generic-generate (generator name)
+  (when (string-not-empty name)
+    (rails-script:run-generate (replace-regexp-in-string "-" "_" generator) name)))
+
 (defun rails-script:generate-controller (&optional controller-name actions)
   "Generate a controller and open the controller file."
   (interactive (list

