小编New*_*ria的帖子

如何为MySQL中的多列指定唯一约束?

我有一张桌子:

table votes (
    id,
    user,
    email,
    address,
    primary key(id),
);
Run Code Online (Sandbox Code Playgroud)

现在我想使列用户,电子邮件,地址唯一(一起).

我如何在MySql中执行此操作?

  • 当然这个例子只是......一个例子.所以请不要担心语义.

mysql composite-key unique-constraint database-table

835
推荐指数
9
解决办法
46万
查看次数

Rails 4:未在生产中加载的资产

我正在尝试将我的应用程序投入生产,图像和css资产路径无法正常工作.

这是我目前正在做的事情:

  • 图片资产位于/app/assets/images/image.jpg中
  • 样式表位于/app/assets/stylesheets/style.css中
  • 在我的布局中,我像这样引用css文件: <%= stylesheet_link_tag "styles", media: "all", "data-turbolinks-track" => true %>
  • 在重新启动独角兽之前,我运行RAILS_ENV=production bundle exec rake assets:precompile并且它成功了,我在public/assets目录中看到了指纹文件.

当我浏览到我的网站时,我收到404找不到错误mysite.com/stylesheets/styles.css.

我究竟做错了什么?

更新: 在我的布局中,它看起来像这样:

<%= stylesheet_link_tag    "bootstrap.min", media: "all", "data-turbolinks-track" => true %>
<%= stylesheet_link_tag    "styles", media: "all", "data-turbolinks-track" => true %>
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>
Run Code Online (Sandbox Code Playgroud)

生成源是这样的:

<link data-turbolinks-track="true" href="/stylesheets/bootstrap.min.css" media="all" rel="stylesheet" />
<link data-turbolinks-track="true" href="/stylesheets/styles.css" media="all" rel="stylesheet" />
<script data-turbolinks-track="true" src="/assets/application-0c647c942c6eff10ad92f1f2b0c64efe.js"></script>
Run Code Online (Sandbox Code Playgroud)

看起来Rails没有正确地查找已编译的css文件.但是为什么它适用于javascripts(注意/assets/****.js路径)是非常令人困惑的.

ruby ruby-on-rails asset-pipeline ruby-on-rails-4

116
推荐指数
6
解决办法
11万
查看次数

Rails 3.1资产管道:如何加载特定于控制器的脚本?

如果我在Rails 3.1中生成一个新的控制器,也会自动添加一个带有控制器名称的javascript文件.首先,我认为这个javascript文件只会在调用相关控制器时使用.

默认情况下//= require_tree .,application.js-file中有指令,包括树上的每个javascript文件.

我怎么才能加载控制器特定的脚本?

assets ruby-on-rails ruby-on-rails-3.1 sprockets asset-pipeline

76
推荐指数
4
解决办法
4万
查看次数

Rails 3.1和jquery-ui资产

这是在另一个问题中提出的,但在3.1rc1中,没有一个解决方案对我有用.

我正在尝试使用rails 3.1中的新资产 - 我有文件:

./vendor/assets/stylesheets/jquery-ui-1.8.13.custom.css
./vendor/assets/javascripts/jquery-ui-1.8.13.custom.min.js
Run Code Online (Sandbox Code Playgroud)

然后我补充说:

//= require jquery-ui to app/assets/javascripts/application.js
*= require jquery-ui to app/assets/stylesheets/application.css
Run Code Online (Sandbox Code Playgroud)

jquery-ui javascript文件加载得很好,但是css文件说:

Sprockets::FileNotFound (couldn't find file 'jquery-ui'
     (in /home/xanview2/xancar/app/assets/stylesheets/application.css):6):
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

assets jquery-ui ruby-on-rails-3.1 asset-pipeline

52
推荐指数
6
解决办法
4万
查看次数

Rails 3.1资产管道和手动订购Javascript需要

我正在尝试将现有应用程序转换为新的3.1资产管道布局,并希望包含许多必须按特定顺序排列的供应商文件(underscore.js和backbone是一对).因此,我不能只使用a = require_tree .来提取我的供应商文件,(不用前缀重命名每个文件.Yuck).

以下是我的app/assets/javascripts/application.js文件:

//= require modernizr-1.7
//= require jquery-1.6.1
//= require underscore-1.1.5
//= require backbone-0.3.3
//= require_tree .

我尝试了with/out扩展的每个组合,带有/ out的require_tree和with/out的相对路径,没有任何效果.我的所有供应商文件都在/vendor/assets/javascripts/.

我觉得我是愚蠢的,因为这似乎是一个明显的用例,(包括按顺序名称的特定文件在JS中很常见,不是吗?)我必须做一些愚蠢的事情吗?

ruby-on-rails-3 sprockets asset-pipeline

52
推荐指数
4
解决办法
3万
查看次数

如何将RubyMine通知发送到Growl?

我正在试图找出如何让RubyMine的控制台向咆哮发送消息.具体来说,因为我通过RubyMine运行Rspec&Spork,所以我想获得有关通过和失败的测试数量的Growl通知.

我通过Autotest和RedGreen宝石使用了这个功能的命令行版本,但是这两个宝石似乎都没有在RubyMine中保留其实用性.

有没有人成功推送过RubyMine的Growl通知?

任何人都可以想到可以启用通知的任何工具或机制吗?

rspec rubymine growl spork

47
推荐指数
1
解决办法
734
查看次数

log4net每次运行一个文件

我需要我的应用程序每次运行时创建一个日志文件.

我首选的格式是App.log.yyyy-MM-dd_HH-mm-ss.如果那是不可能的,我会选择App.log.yyyy-MM-dd.counter

这是我目前的appender配置:

<appender name="File" type="log4net.Appender.RollingFileAppender">
  <file value="App.log"/>
  <rollingStyle value="Date"/>
  <datePattern value=".yyyy-MM-dd_HH-mm-ss"/>
  <staticLogFileName value="false"/>
  <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
</appender>
Run Code Online (Sandbox Code Playgroud)

但它会根据日期和时间创建随机数量的文件.

log4net

46
推荐指数
2
解决办法
2万
查看次数

sass-rails helpers"image-url","asset-url"在rails 3.2.1中不起作用

我在3.2.1,sass-rails-3.2.4和sass-3.1.15 ......

资产管道的文档说:

asset-url("rails.png", image) becomes url(/assets/rails.png)
image-url("rails.png") becomes url(/assets/rails.png)
Run Code Online (Sandbox Code Playgroud)

...

所以我做了以下文件:

# app/assets/stylesheets/public/omg.css.sass

body
  background: asset-url('snake.gif', image)

#lol
  background: image-url('snake.gif')
Run Code Online (Sandbox Code Playgroud)

当我访问localhost:3000/assets/public/omg.css时,我得到:

body {
  background: asset-url("snake.gif", image); }

#lol {
  background: image-url("snake.gif"); }
Run Code Online (Sandbox Code Playgroud)

...我也尝试将文件更改为omg.css.scss并将语法更改为:

# app/assets/stylesheets/public/omg.css.scss

body {
  background: asset-url('snake.gif', image);
}

#lol {
  background: image-url('snake.gif');
}
Run Code Online (Sandbox Code Playgroud)

但得到相同的结果......有没有人知道为什么这些助手不工作?

ruby-on-rails sass ruby-on-rails-3 asset-pipeline

45
推荐指数
3
解决办法
6万
查看次数

如何获取Rails资产管道以生成源映射?

我想让Rails在编译的coffeescript/minified JS旁边生成源映射,以便更好地记录错误.但是,网上似乎没有关于如何执行此操作的全面文档.有没有人这样做过?

我在Rails 3.2和Heroku上.

javascript ruby-on-rails heroku sprockets asset-pipeline

43
推荐指数
2
解决办法
1万
查看次数

Rails 3.1管道 - 排除Javascript文件

我想从管道中排除特定的javascript文件(modernizr),因为我希望它单独加载.

我想在开头加载Modernizr,最后我的其余javascript连接起来.

是否有办法在3.1中的资产管道中执行相反的要求?即.排除?

提前致谢.

亚当.

ruby ruby-on-rails ruby-on-rails-3 asset-pipeline

29
推荐指数
3
解决办法
2万
查看次数