小编sci*_*fic的帖子

Heroku上的ffmpeg:无法识别的选项'预设'

我在我的本地Rails应用程序中使用ffmpeg版本1.2.4来转换视频文件.当我在本地运行应用程序时,一切都按预期工作.当我部署到heroku时,我为ffmpeg添加了一个buildpack:

https://github.com/shunjikonishi/heroku-buildpack-ffmpeg

这将安装ffmpeg版本git-2013-06-02-5711e4f.当我尝试将视频转码为mp4时,我收到以下错误:

无法识别的选项'预设'.拆分参数列表时出错:找不到选项

这是完整的日志:

2013-11-17T19:45:05.255059+00:00 app[web.1]: Running transcoding...
2013-11-17T19:45:05.255059+00:00 app[web.1]: ffmpeg -y -i /app/public/uploads/tmp/1384717504-2-9158/Untitled.mov -vcodec libx264 -acodec libfaac -s 640x360  -qscale 0 -preset slow -g 30 -aspect 1.7777777777777777 /app/public/uploads/tmp/1384717504-2-9158/tmpfile.mp4
2013-11-17T19:45:05.255059+00:00 app[web.1]: 
2013-11-17T19:45:05.317895+00:00 app[web.1]: Failed encoding...
2013-11-17T19:45:05.317895+00:00 app[web.1]: ffmpeg -y -i /app/public/uploads/tmp/1384717504-2-9158/Untitled.mov -vcodec libx264 -acodec libfaac -s 640x360  -qscale 0 -preset slow -g 30 -aspect 1.7777777777777777 /app/public/uploads/tmp/1384717504-2-9158/tmpfile.mp4
2013-11-17T19:45:05.317895+00:00 app[web.1]: 
2013-11-17T19:45:05.317895+00:00 app[web.1]: ffmpeg version git-2013-06-02-5711e4f Copyright (c) 2000-2013 the FFmpeg developers
2013-11-17T19:45:05.317895+00:00 app[web.1]:   built on Jun  2 2013 07:38:40 with gcc …
Run Code Online (Sandbox Code Playgroud)

video ffmpeg ruby-on-rails heroku

4
推荐指数
1
解决办法
7271
查看次数

处理html.erb中的引号

我正在我的html.erb文件中设置图像的数据元素:

<img src="<%=image%>" data-description="<%= auto_link(step.description)%>"/>
Run Code Online (Sandbox Code Playgroud)

问题是我的step.description中有时会引用干扰,因此数据描述设置不正确,例如:

<img src="..." data-description="<pre><code class=" language-java"="" style="width: 193px; height: 257px; margin-left: -96.5px; margin-top: -128.5px; opacity: 1;">
Run Code Online (Sandbox Code Playgroud)

如何删除erb文件中的冲突引号?

ruby-on-rails

4
推荐指数
1
解决办法
3696
查看次数

Rails 范围:关联为零

在我的 Rails 应用程序中,项目可以包含视频。我想为项目创建一个范围以获取没有关联视频的项目。我该怎么做呢?

这是我的模型协会

class Project < ActiveRecord::Base
  has_one :video
end

class Video < ActiveRecord::Base
    belongs_to :project
end
Run Code Online (Sandbox Code Playgroud)

scope ruby-on-rails associations

4
推荐指数
1
解决办法
2283
查看次数

Heroku:编译的Slug尺寸太大

我已经花了半天时间尝试调试Heroku错误,因为slug编译错误导致我无法将代码推送到我的登台服务器:

Compiled slug size: 320.5MB is too large (max is 300MB).
Run Code Online (Sandbox Code Playgroud)

我已将所有资产移至AWS3并使用以下信息创建了一个.slugignore文件:

*.psd
*.pdf
test
spec
features
doc
public
Run Code Online (Sandbox Code Playgroud)

我可以使用哪些其他策略?最奇怪的是,据我所知,代码与生产服务器相同,推送到生产服务器时没有任何错误.

ruby-on-rails heroku

4
推荐指数
2
解决办法
2601
查看次数

onmouseover for link_to image_tag

我有一个链接的image_tag,我想在鼠标悬停时更改图像.我认为以下方法可行,但图像未开启鼠标悬停:

<%= link_to image_tag("new_step.png"),new_project_step_path(@project), :class=> "newStep", :onmouseover => "new_step_highlighted.png"%>
Run Code Online (Sandbox Code Playgroud)

我也尝试过编辑css,但遗憾的是这也不起作用:

.newStep{
    background: url('../assets/new_step_highlighted.png');
}

.newStep:hover{
    background: url('../assets/new_step_highlighted.png');
}
Run Code Online (Sandbox Code Playgroud)

对于这两种情况,仅显示图像"new_step.png".我该如何解决这个问题?在此先感谢您的帮助!

ruby-on-rails

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

使用MiniMagick根据方向调整图像大小

我想根据它们是风景还是肖像来处理不同的图像.

这是我的图像上传器模型中的代码:

def is_landscape?
    if @file
      image = ::MiniMagick::Image.open(file)
      Rails.logger.info "from in is_landscape? : #{image[:width] > image[:height]}"
      image[:width] >= image[:height]
    end
  end

  def is_portrait?
    Rails.logger.info "from in is_portrait? : #{image[:height] > image[:width]}"
    image[:height] > image[:width]
  end

  process :resize_to_fill => [667, 500], if: :is_landscape?

  process :resize_to_fill => [500, 667], if: :is_portrait?

  version :preview do
    process :resize_to_fill => [380,285]
  end

  version :thumb do
      process :resize_to_fill => [105,79], if: :is_landscape?
      process :resize_to_fill => [105, 158], if: :is_portrait?
  end
Run Code Online (Sandbox Code Playgroud)

我收到了错误

"ArgumentError (wrong number of …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails carrierwave minimagick

3
推荐指数
1
解决办法
1157
查看次数

Rails:无法验证CSRF令牌的真实性

我的Rails应用程序突然开始给我以下错误:

Can't verify CSRF token authenticity
ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken):
Run Code Online (Sandbox Code Playgroud)

我没有对应用程序进行任何更改,因此我对于导致此问题的原因完全感到沮丧.完整的错误日志如下.我取出了真实性令牌但确认该令牌对当前用户有效(通过在控制台中检查).

2015-05-13T01:44:49.038482+00:00 app[web.1]: I, [2015-05-13T01:44:49.038369 #9]  INFO -- : Started POST "/projects?auth_token=xxx” for 76.118.180.235 at 2015-05-13 01:44:49 +0000
2015-05-13T01:44:49.044865+00:00 app[web.1]: I, [2015-05-13T01:44:49.044762 #9]  INFO -- : Completed 422 Unprocessable Entity in 1ms
2015-05-13T01:44:49.119991+00:00 app[web.1]: I, [2015-05-13T01:44:49.119893 #9]  INFO -- : Processing by SpinsController#create as JSON
2015-05-13T01:44:49.120060+00:00 app[web.1]: I, [2015-05-13T01:44:49.119998 #9]  INFO -- :   Parameters: {"spin"=>{}, "auth_token"=>”xxx”}
2015-05-13T01:44:49.120537+00:00 app[web.1]: W, [2015-05-13T01:44:49.120469 #9]  WARN -- : Can't verify CSRF token authenticity
2015-05-13T01:44:49.122935+00:00 app[web.1]: F, …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails csrf authenticity-token devise

3
推荐指数
1
解决办法
5369
查看次数

容器中的工具提示截止

我使用的是Bootstrap工具提示,目前在我的页面上已被删除。我删除了overflow-x属性以尝试确保工具提示可见,但仍将其切断:

在此处输入图片说明

我已经找到了一些可能的解决方案,但是我无法将工具提示的位置设置为固定或更改工具提示的父级,因为它们需要与容器中的元素一起滚动:

https://www.youtube.com/watch?v=qoNkpFAHr0o&feature=youtu.be

这是我添加工具提示的方法:

$('#step_name').tooltip(
{
    title: "1. Add step title",
    placement: "left",
    container: ".editDetailView",
    trigger: "manual",
    position: "absolute"
});
$('#uploadMedia').tooltip(
{
    title: "2. Upload images/videos",
    placement: "left",
    container: ".editDetailView",
    trigger: "manual",
    position: "absolute"
});
$('.detailViewText').tooltip(
{
    title: "3. Add step description",
    placement: "left",
    container: ".editDetailView",
    trigger: "manual",
    position: "absolute"
});
$('.update_step_button').tooltip(
{
    title: "4. Click to create step",
    placement: "bottom",
    container: ".editDetailView",
    trigger: "manual",
    position: "absolute"
});
Run Code Online (Sandbox Code Playgroud)

这是容器元素上的CSS:

.processBlog{
    position: absolute;
    overflow: auto;
    form{
        overflow: auto;
        .stepDetailView{
           overflow-y: auto; …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery twitter-bootstrap

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

相对布局的百分比宽度

我有一个布局,我只想占用屏幕宽度的一定百分比(左边的图像).现在,我的相对布局横跨显示器的整个宽度(右侧图像).我怎样才能修复左边和右边的边距?

在此输入图像描述

这就是我定义相对布局的方式:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:background="@color/white"
    android:orientation="vertical" 
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp">
Run Code Online (Sandbox Code Playgroud)

android relativelayout

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

Android Facebook GraphRequest 不返回电子邮件

我查看了几个关于这个问题的帖子,但没有找到解决方案。

     facebookLoginButton = (LoginButton) findViewById(R.id.facebook_login_button);
        facebookLoginButton.setReadPermissions(Arrays.asList("read_stream", "user_photos", "email", "user_location"));

// create callback manager for facebook
        callbackManager = CallbackManager.Factory.create();

        facebookLoginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
            @Override
            public void onSuccess(LoginResult loginResult) {
                Log.d(TAG, "LOGGED IN");

                GraphRequest request = GraphRequest.newMeRequest(loginResult.getAccessToken(), new GraphRequest.GraphJSONObjectCallback() {
                    @Override
                    public void onCompleted(JSONObject object, GraphResponse response) {
                        Log.d(TAG, "Facebook graph response: " + response.toString());
                        try {
                            // get only the part before the @ symbol
                            String email_username = object.getString("email").substring(0, object.getString("email").indexOf("@"));
                            editor = preferences.edit();
                            editor.putString("username", email_username);
                            editor.commit();

                            Log.d(TAG, "logging in user " …
Run Code Online (Sandbox Code Playgroud)

android facebook

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