小编gre*_*ide的帖子

rails carrierwave编辑/更新表格

在我的rails项目中,我使用Carrierwave通过雾将图像上传到S3.到目前为止,我有CRUD频谱的创建读取和删除部分工作.

我的问题是编辑/更新部分.我使用相同_form.html.erb的编辑我用于创建记录.当我单击编辑链接时,表单会将所有数据加载到表单字段中以进行编辑,但图像除外.表单字段为空白,好像没有与记录关联的图像.

如何更新已保存到S3的图像?

型号/ listing.rb

class Listing < ActiveRecord::Base
  attr_accessible :body, :price, :title, :image

  mount_uploader :image, ListingUploader
end
Run Code Online (Sandbox Code Playgroud)

Controllers/listings_controller.rb(编辑/更新部分)

def edit
    @listing = Listing.find(params[:id])
end

def update
    @listing = Listing.find(params[:id])
    if @listing.update_attributes(params [:listing])
        redirect_to :action => 'show', :id => @listing
    else
        render :action => 'edit'
    end
end
Run Code Online (Sandbox Code Playgroud)

_form.html.erb

<%= form_for @listing, :html => { :multipart => true } do |l| %>
<p>
    <%= l.label :title %>
    <%= l.text_field :title %>
</p>

<p>
    <%= l.label :price %>
    <%= …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails carrierwave

6
推荐指数
1
解决办法
2783
查看次数

Dokku域:添加<app> <domain>返回找不到支持的vhost配置.禁用vhost支持

这是我的第一个网站,我曾尝试使用Dokku在Digital Ocean上部署rails应用程序.

这是在Digital Ocean上托管的基本Ubuntu VM上的默认Dokku安装

当我尝试运行时:

dokku domains:add myapp mydomain.com
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

=====> unsupported vhost config found. disabling vhost support
=====> config:set-norestart is deprecated as of v0.3.22
-----> Setting config vars
       NO_VHOST: 1
-----> VHOST support disabled, deleting four-heroes/VHOST
-----> Added mydomain.com to myapp
Run Code Online (Sandbox Code Playgroud)

尽管有错误,但最后一行看起来可能有效.但是,当我跑:

dokku domains myapp
Run Code Online (Sandbox Code Playgroud)

我收到这条消息.

=====> unsupported vhost config found. disabling vhost support
=====> config:set-norestart is deprecated as of v0.3.22
-----> Setting config vars
       NO_VHOST: 1
=====> myapp Domain Names
cat: /home/dokku/myapp/VHOST: No such file or …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails nginx digital-ocean dokku

5
推荐指数
1
解决办法
829
查看次数

原子文本编辑器 - 在文本下的背景比页面背景更加黑暗

对于我的生活,我无法想象这一个.

在全新安装的atom上,我添加的任何黑暗语法主题都使文本下方的区域比页面的其他部分更暗.为了使这种情况更加分散注意力,这种效果会在第一次悬停在标签上时闪烁.

我忘记了技术细节.我有一个2015年初MBP与新的OS X Sierra安装.

在此输入图像描述

atom-editor

5
推荐指数
1
解决办法
208
查看次数

Rails Capistrano - SSHKit :: Command :: Failed:bundle退出状态:16

我不知道这里出了什么问题.我按照这里的指示. http://www.rubytreesoftware.com/resources/ruby-on-rails-41-ubuntu-1404-server-deployment

我现在一直到部署部分没有错误我现在收到以下错误消息:

$ cap production deploy
INFO [0af71d8d] Running /usr/bin/env mkdir -p /tmp/keepr/ as deploy@crane.local
DEBUG [0af71d8d] Command: /usr/bin/env mkdir -p /tmp/keepr/
INFO [0af71d8d] Finished in 0.637 seconds with exit status 0 (successful).
DEBUG Uploading /tmp/keepr/git-ssh.sh 0.0%
INFO Uploading /tmp/keepr/git-ssh.sh 100.0%
INFO [1273b238] Running /usr/bin/env chmod +x /tmp/keepr/git-ssh.sh as deploy@crane.local
DEBUG [1273b238] Command: /usr/bin/env chmod +x /tmp/keepr/git-ssh.sh
INFO [1273b238] Finished in 0.103 seconds with exit status 0 (successful).
INFO [b0799806] Running /usr/bin/env git ls-remote --heads git@gitlab.com:forrest/keepr.git as deploy@crane.local
DEBUG …
Run Code Online (Sandbox Code Playgroud)

ruby git capistrano ruby-on-rails

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

生产中的 Rails 6 Webpacker:rake 资产:预编译失败

我在生产服务器上设置了一个典型的 Rails 6.0.2 应用程序,并且我使用 git hooks 来部署该应用程序。当我尝试运行:rails assets:precompile我收到以下错误:

rake aborted!
Sprockets::ArgumentError: link_directory argument must be a directory
/home/user/myapp/app/assets/config/manifest.js:2
Run Code Online (Sandbox Code Playgroud)

这是manifest.js 文件

//= link_tree ../images
//= link_directory ../stylesheets .css
Run Code Online (Sandbox Code Playgroud)

我不明白我做错了什么。除非我弄错了,否则 webpacker 不会取代 sprocket 吗?

ruby-on-rails webpacker ruby-on-rails-6

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

服务器日志中存在 ActiveStorage::FileNotFoundError (ActiveStorage::FileNotFoundError),但在控制台中无法重现

我有以下模型:

class Section < ApplicationRecord
  has_many_attached :files
  def to_dir
    [client.to_dir, operation.to_dir, self.name.parameterize].join('/')
  end
  after_save :transload_files

  def transload_files
    TransloadService.sync( self.to_dir, self.files )
  end
end
Run Code Online (Sandbox Code Playgroud)

方法transload_files是问题。这是转运服务:

class TransloadService

    class << self

        def sync(check_dir, files)
            # First we have to check the transload dir for files that have been deleted on the app
            transloaded_files = Request.list(check_dir)
            cull_list = transloaded_files.reject{ |e| files.map{|t| t.filename }.include? Request.filename(e)}
            if cull_list.count > 0
                Request.trim(cull_list)
                p "#{cull_list.count} files trimed from #{check_dir}."
            end

            # Next we have to …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails rails-activestorage

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

Python - 需要遍历目录寻找TXT文件

我是一个完整的Python Newb

我需要遍历查找.txt文件的目录,然后单独读取和处理它们.我想设置它,以便脚本所在的任何目录都被视为此操作的根目录.例如,如果脚本位于/ bsepath/workDir中,那么它将循环遍历workDir及其子项中的所有文件.

到目前为止我所拥有的是:

#!/usr/bin/env python

import os

scrptPth = os.path.realpath(__file__)

for file in os.listdir(scrptPth)
    with open(file) as f:
        head,sub,auth = [f.readline().strip() for i in range(3)]
        data=f.read()
        #data.encode('utf-8')

pth = os.getcwd()

print head,sub,auth,data,pth
Run Code Online (Sandbox Code Playgroud)

这段代码给我一个无效的语法错误,我怀疑是因为os.listdir不喜欢标准字符串格式的文件路径.另外,我不认为我正在做循环行动.如何在循环操作中引用特定文件?它被打包为变量吗?

任何帮助都是适当的

python

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

如何在Heroku上使用EXIF PHP扩展?

我正在使用数据为我的图像提供字幕.

exif_read_data在localhost上使用工作正常(在Ubuntu上使用Apache),但Heroku报告:

PHP致命错误:在/ app/path/to/files中调用未定义的函数exif_read_data().

我不确定该怎么做,查看错误消息,看起来我的Heroku应用程序上没有安装/启用EXIF功能.

可以添加或启用吗?

php heroku

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

Rails - 使用Capistrano运行Rake任务

我在这里挠挠脑袋想知道我是不是在叫错树.我有一台服务器,我已经使用Capistrano部署了Rails应用程序.最近我向其中一个模型添加了一个新的数据类型,现在我需要运行一个Rake任务来更新现有的记录.

经过大量的谷歌搜索后,我开始怀疑人们是否会使用Capistrano的Rake任务.2013年左右的一些论坛帖子提到Capistrano支持.rake扩展.而我发现的其他帖子表明Capistrano有自己的任务自动化系统,并且与rake不兼容.

我找到了Cape,但我不确定这是否是我正在寻找的,因为它似乎将Rake任务转换为帽子食谱.可能我错了这一点,我真的没有任何与Capistrano合作的经验,甚至没有在完整的堆栈频谱中工作.

我想知道的是:如何在远程服务器上运行简单的Rake任务?

为清楚起见,我已经在最新的Ubuntu LTS上安装了应用程序,如果内存服务,则安装14.10.我按照这里的教程进行操作.我有完整的sudo访问权限,我可以进入服务器.

提前感谢帮助一个菜鸟

ruby rake capistrano ruby-on-rails

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

Slim 模板和 TailwindCSS 在类声明中使用“:”

TailwindCSS 看起来像一个很棒的前端工具,但我想知道如何将它与 Rails Slim 模板语言一起使用?

例如:

<div class="bg-red-500 sm:bg-green-500 md:bg-blue-500 lg:bg-pink-500 xl:bg-teal-500"></div>
Run Code Online (Sandbox Code Playgroud)

如果我通过 HTML2SLIM 运行它,我会得到以下建议:

.bg-red-500.sm:bg-green-500.md:bg-blue-500.lg:bg-pink-500.xl:bg-teal-500
Run Code Online (Sandbox Code Playgroud)

这会产生以下 HTML:

<div class="bg-red-500 sm">
   <bg-green-500 class="md">
      <bg-blue-500 class="lg">
         <bg-pink-500 class="xl">
            <bg-teal-500></bg-teal-500>
         </bg-pink-500>
      </bg-blue-500>
   </bg-green-500>
</div>
Run Code Online (Sandbox Code Playgroud)

似乎冒号 ':' 被解释为多个 html 元素。我想知道是否有办法解决这个问题?我很想在 TailwindCSS 中使用 Slim。

到目前为止,我已经使用 Rails 的 content_tag 取得了一些进展:

= content_tag :span, 'Accounts', class: 'invisible md:visible lg:visible'
Run Code Online (Sandbox Code Playgroud)

但我只能到此为止。

slim-lang tailwind-css

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

Activestorage - 将所有资产从一个存储桶转移到另一个存储桶

我将我的应用程序从 Vultr 切换到 DigitalOcean。现在我在 Vultr 上配置了一个存储桶以及以前的服务器。当我尝试从 DigitalOcean 访问 Vultr 上的 activestorage 映像时,映像仅加载 10% 的时间,并且大多数请求都会导致 502 错误。

由于我完全将这个应用程序从 Vultr 中移走,我觉得将我的应用程序的图像资产转移到 DigitalOcean 存储桶是一个好主意。

我发现了很多带有迁移脚本的帖子和一些博客,但它们的重点是从本地迁移到存储桶。我还没有发现从一个桶移动到另一个桶的任何事情。

我不知道该怎么做,有没有人从一个桶移到另一个桶?如果是这样,你是怎么做到的?

ruby-on-rails rails-activestorage

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

Rails - 查询将负十进制值视为正数

我有一个Transaction模型,其中包含:start_balance和end_balance,两者都是十进制字段.开始余额大于期末余额的交易是收费的结果,付款则相反.

我有这个查询只查看end_balance大于start_balance(付款)的交易

class Transaction < ActiveRecord::Base

  def self.payments
    where(:end_balance > :start_balance)
  end

end
Run Code Online (Sandbox Code Playgroud)

这两个字段通常都包含负值.这看起来很简单,但有趣的是,当我运行此查询时,它会将所有记录视为正面.例如,以下代码:

Transaction.payments.first(10).each do |t|
  puts t.start_balance.to_s + " start"
  puts t.end_balance.to_s + " end" 
end
Run Code Online (Sandbox Code Playgroud)

生产:

0.0 start
-6212.0 end
-6212.0 start
0.0 end
0.0 start
-6212.0 end
-6212.0 start
0.0 end
0.0 start
-6212.0 end
-6212.0 start
0.0 end
0.0 start
-6212.0 end
-6212.0 start
0.0 end
0.0 start
-6212.0 end
-6212.0 start
0.0 end
Run Code Online (Sandbox Code Playgroud)

看着这一点,似乎它将所有数字视为积极的.我在这里错过了什么吗?

ruby-on-rails

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