I am following the manual Agile Web Development with Rails 4th edition and I have a problem with sprocket css in rails 3.1.
The code css is:
If I modify the css code of app/assets/stylesheets/aplication.css.scss I catch the next error:
Sprockets::CircularDependencyError in Store#index
Showing /home/ubuntu/Desktop/Depot/app/views/layouts/application.html.erb where line #5 raised:
/home/ubuntu/Desktop/Depot/app/assets/stylesheets/application.css.scss has already been required
Extracted source (around line #5):
2: <html>
3: <head>
4: <title>Pragprog Books Online Store</title>
5: <%= stylesheet_link_tag "application" %>
6: <%= javascript_include_tag "application" %>
7: <%= csrf_meta_tag %>
8: </head>
Rails.root: /home/ubuntu/Desktop/Depot
Application Trace | Framework Trace | Full Trace
app/views/layouts/application.html.erb:5:in`_app_views_layouts_application_html_erb___1008723970_81658620'
I dont understand why if I modify a margin value or a padding value in aplication.css.scss for example I get this error.
Thank you very much.
You should remove app/assets/stylesheets/application.css.
I had a similar problem:
Asset pipeline not precompiling sass
The circular dependency happens when the manifest file requires the tree files. Sass does this anyway so it's not necessary.
Remove:
*= require_tree .
I was having this same problem after installing SCSS. I fixed the problem by removing the defult comments that rails places in the header. So this:
/*
* This is a manifest file that'll be compiled into application.css, which will include all the files
* listed below.
*
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
*
* You're free to add application-wide styles to this file and they'll appear at the top of the
* compiled file, but it's generally better to create a new file per style scope.
*
*= require_self
*= require_tree .
*/
#wrapper {
width: 980px;
margin: 0 auto;
}
Became this:
#wrapper {
width: 980px;
margin: 0 auto;
}
Just name the application.css as "application.scss". This will solve your problem.
来源:https://stackoverflow.com/questions/7462661/sprocketscirculardependencyerror-in-storeindex