summaryrefslogtreecommitdiffhomepage
path: root/app/controllers
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers')
-rw-r--r--app/controllers/application_controller.rb2
-rw-r--r--app/controllers/concerns/.keep0
-rw-r--r--app/controllers/nodes_controller.rb33
3 files changed, 35 insertions, 0 deletions
diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
new file mode 100644
index 0000000..09705d1
--- /dev/null
+++ b/app/controllers/application_controller.rb
@@ -0,0 +1,2 @@
+class ApplicationController < ActionController::Base
+end
diff --git a/app/controllers/concerns/.keep b/app/controllers/concerns/.keep
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/app/controllers/concerns/.keep
diff --git a/app/controllers/nodes_controller.rb b/app/controllers/nodes_controller.rb
new file mode 100644
index 0000000..f603f52
--- /dev/null
+++ b/app/controllers/nodes_controller.rb
@@ -0,0 +1,33 @@
+class NodesController < ApplicationController
+
+ def index
+ @rootnodes = Node.where(parent: nil)
+ end
+ def show
+ @node = Node.find(params[:id])
+ @nodes = Node.all
+ end
+
+ def new
+ @node = Node.new
+ @nodes = Node.all
+ end
+ def create
+ unless params[:node][:parent].to_i == 0
+ @parent = Node.find(params[:node][:parent])
+ @node = @parent.children.build(title: params[:node][:title], content: params[:node][:content], parent: @parent)
+ else
+ params[:node][:parent] = nil
+ @node = Node.new(params.require(:node).permit(:parent,:title,:content))
+ end
+
+
+ @node.save
+ redirect_to @node
+ end
+
+ private
+ def node_params
+
+ end
+end