diff options
Diffstat (limited to 'app/controllers')
| -rw-r--r-- | app/controllers/application_controller.rb | 2 | ||||
| -rw-r--r-- | app/controllers/concerns/.keep | 0 | ||||
| -rw-r--r-- | app/controllers/nodes_controller.rb | 33 |
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 |
