Skip to content

Instantly share code, notes, and snippets.

@mattboldt
Last active December 26, 2015 16:09
Show Gist options
  • Save mattboldt/7177421 to your computer and use it in GitHub Desktop.
Save mattboldt/7177421 to your computer and use it in GitHub Desktop.
# Admin CodesController
class Admin::CodesController < AdminController
def index
end
def show
@code = Code.find(params[:id])
end
def edit
@code = Code.find(params[:id])
end
def new
@code = Code.new
end
def update
@code = Code.update_attributes(params[:code])
end
def preview
# stuff I'm returning as a preview
end
end
# routes.rb
namespace :admin do
resources :codes, :path => "/code/"
post "codes/preview", to: "codes#preview" #preview route 404s on "edit" view, works fine on "new"
end
# The following code is in both the "new" and "edit" views for admin/codes_controller
<script>
$(function(){
var form = $("#code-form form");
$(".code-preview").click(function (){
$.ajax({
type: "POST",
url: "<%= admin_codes_preview_path %>",
headers: { 'X-CSRF-Token': $('meta[name="csrf-token"]').attr('content') },
data: $(form).serialize(),
dataType: "html",
success: function(data){
$(".result").html(data);
}
});
});
});
</script>
<div id="code-form">
<%= form_for @code do |f| %>
<%= f.text_field :name %>
<%= f.text_area :body_input %>
<%= f.submit %>
<% end %>
</div>
<div class="result">Here's the result:</div>
<button class="code-preview">Preview</button>
# routes
new_admin_user_session GET /admin_users/sign_in(.:format) devise/sessions#new
admin_user_session POST /admin_users/sign_in(.:format) devise/sessions#create
destroy_admin_user_session DELETE /admin_users/sign_out(.:format) devise/sessions#destroy
admin_user_password POST /admin_users/password(.:format) devise/passwords#create
new_admin_user_password GET /admin_users/password/new(.:format) devise/passwords#new
edit_admin_user_password GET /admin_users/password/edit(.:format) devise/passwords#edit
PATCH /admin_users/password(.:format) devise/passwords#update
PUT /admin_users/password(.:format) devise/passwords#update
admin GET /admin(.:format) admin/admin_users#index
admin_users GET /admin/users(.:format) admin/admin_users#index
POST /admin/users(.:format) admin/admin_users#create
new_admin_user GET /admin/users/new(.:format) admin/admin_users#new
edit_admin_user GET /admin/users/:id/edit(.:format) admin/admin_users#edit
admin_user GET /admin/users/:id(.:format) admin/admin_users#show
PATCH /admin/users/:id(.:format) admin/admin_users#update
PUT /admin/users/:id(.:format) admin/admin_users#update
DELETE /admin/users/:id(.:format) admin/admin_users#destroy
admin_codes GET /admin/code(.:format) admin/codes#index
POST /admin/code(.:format) admin/codes#create
new_admin_code GET /admin/code/new(.:format) admin/codes#new
edit_admin_code GET /admin/code/:id/edit(.:format) admin/codes#edit
admin_code GET /admin/code/:id(.:format) admin/codes#show
PATCH /admin/code/:id(.:format) admin/codes#update
PUT /admin/code/:id(.:format) admin/codes#update
DELETE /admin/code/:id(.:format) admin/codes#destroy
admin_codes_preview POST /admin/codes/preview(.:format) admin/codes#preview
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment