want to get pagespeed in my view page on rails 4 - ruby-on-rails-4

I have implemented the google page speed on rails 4 with the help of pagespeed gem but I am getting my result on console. I want this result on my view page.
Controller code:-
#request = PageSpeed::Request::new("www.google.com", 'api key', 'desktop')
puts #request.pagespeed

The instance variable #request defined in your controller will be available in your views as
<%= #request %>
for pagespeed
<%= #request.pagespeed %>

Related

Not able to update the password in Rails 5 web app

In My Rails 5 Web App. I have installed Devise gem in it. When I wan to edit my password by clicking on link below but instead on going to the page for update password. Page get refreshed and It gives alert message you are already logged in .
I am using Below link in my Application:
<%= link_to('Edit Password' , edit_user_password_path)%>
Routes Files is as:
devise_for :users, controllers: { sessions: "users/sessions" }
Please suggest me the changes to redirect to edit password page all other links like below are working.
<%= link_to('Edit Registration',edit_user_registration_path )%>
<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>
<%= link_to('Edit Registration', edit_user_registration_path) %>
<%= link_to('Edit Password', edit_user_password_path) %>

In Rails, how do I define a "_new_path"?

I’m using Rails 4. How do I define a “_new_path” in my routes.rb file? I’m tryhin got create an admin area where an admin can create objects. So I have this in my config/routes.rb file
get 'admin/index'
get 'admin/list'
get 'admin/add'
get 'admin/approve'
Then in my app/views/admin/_add.html.erb file, I have
<%= form_for #my_object do |f| %>
but when I visit my page, I get the error
undefined method `my_objects_path' for #<#<Class:0x007ffea5de2c80>:0x007ffea5dd9798>
Did you mean? my_objects_new_path
I want the form to submit to the “create” method in my controller. How do I set this up?
try this commande rake routes to show yours paths rake routes
admin_index GET /admin/index(.:format) admin#index
admin_list GET /admin/list(.:format) admin#list
admin_add GET /admin/add(.:format) admin#add
admin_approve GET /admin/approve(.:format) admin#approve
after in app/views/admin/_add.html.erb file
<%= form_for admin_add_path do |f| %>

rails4, NameError in Zic#index, routes

undefined local variable or method `nov_tisk_revij_index' for #<#<Class:0x007f361551b858>:0x007f3615519c60>
Hey guys, I'm setiing up a rails app and can't figure out what's wrong. I used rails g controller nov_tisk_revij index show to create my views and controller and now I can't link to it. If you can spot what I'm doing wrong, I'd be very grateful, don't want to remake this as is took a fair amount of work.
rake routes returns:
Prefix Verb URI Pattern Controller#Action
nov_tisk_revij_index GET /nov_tisk_revij/index(.:format) nov_tisk_revij#index
nov_tisk_revij_show GET /nov_tisk_revij/show(.:format) nov_tisk_revij#show
zic_index GET /zic/index(.:format) zic#index
root GET / zic#index
my html:
<%= link_to 'Novi izvodi tiskanih revij', nov_tisk_revij_index %>
routes:
get 'nov_tisk_revij/index'
get 'nov_tisk_revij/show'
get 'zic/index'
I tried adding resources :nov_tisk_revij into routes, and it still didn't work, just created additional routes for views I do not have.
controller:
class NovTiskRevijController < ApplicationController
def index
end
def show
end
end
I'm using rails4 with ruby 2.
<%= link_to 'Novi izvodi tiskanih revij', nov_tisk_revij_index_path %>
works

dropzone.js + paperclip uploading each image as its own post

I am facing a strange issue.
I have Post has_many attachments. as: :imageable
and
Attachment belongs_to imageable, polymorphic: true
I am trying to upload multiple images attached to a single post using dropzone.js
However, whenever I upload multiple files in the dropzone-powered form, each image gets uploaded as its own post. I upload 4 images, I get 4 posts with each of the attached image.
How can I get all of the images I attach to a post to be associated with that post only?
Here is what the posts.js looks like:
$(document).ready(function(){
// disable auto discover
Dropzone.autoDiscover = false;
// grap our upload form by its id
$("#new_post").dropzone({
// restrict image size to a maximum 1MB
maxFilesize: 1,
// changed the passed param to one accepted by
// our rails app
paramName: "post[attachments_attributes][][picture]",
// show remove links on each image upload
addRemoveLinks: true
});
});
Create action from the PostsController
def create
#post = Post.create(post_params)
if #post.save
render json: { message: "success" }, :status => 200
else
# you need to send an error header, otherwise Dropzone
# will not interpret the response as an error:
render json: { error: #post.errors.full_messages.join(',')}, :status => 400
end
end
Relevant section of the _form.html.erb for the new Post action:
<%= form_for(#post, html: {class:"dropzone"}) do |f| %>
....
<div class="fallback">
<%= f.label :attachments %>
<%= f.fields_for :attachments do |at| %>
<%= at.file_field :picture %>
<% end %>
</div>
....
<% end %>
The param name is post[attachment_attributes][0][picture] as it appears in the form HTML.
I suspect that this is the cause for the issue, but how do I change it so that the request uploads all the images attached to one post?
Thanks in advance!
Dropzone Issue It looks like this is an issue that is untested but you can use the development branch of Dropzone to access it. This link has the details.

error getting path returned rails 4

I'm trying to access my page gallery/new via a link, so i have created this
<%= link_to 'New gallery' new_gallery_path %>
rake routes gives
gallery_index_path GET /gallery(.:format) gallery#index
POST /gallery(.:format) gallery#create
new_gallery_path GET /gallery/new(.:format) gallery#new
edit_gallery_path GET /gallery/:id/edit(.:format) gallery#edit
gallery_path GET /gallery/:id(.:format) gallery#show
PATCH /gallery/:id(.:format) gallery#update
PUT /gallery/:id(.:format) gallery#update
DELETE /gallery/:id(.:format) gallery#destroy
and within my routes i have
resources :gallery
My view at gallery/new is
<%= nested_form_for #gallery, :html => { :multipart => true} do |f| %>
--content here
<% end %>
whenever i click the link to view this page i get
undefined method `galleries_path
Can someone point out my mistake, please?
You've chosen the wrong name for your resources. It should always be pluralized:
resources :galleries
From this Rails will generate the plural and singular paths correctly. galleries_path for the index, gallery_path for show, etc etc.