小编23t*_*tux的帖子

Sinatra,MySQL和ActiveRecord

如何设置一个简单的sinatra应用程序来使用MySQL和ActiveRecord?我找到了一些解决方案,但它们都没有工作(可能它们已经过时)了:

http://ericfarkas.com/posts/sinatra-activerecord-and-mysql/

http://labs.thredup.com/setting-up-sinatra-with-mysql-and-activerecor

那么使用Sinatra以及MySQL和ActiveRecord的最佳实践方法是什么?该https://github.com/janko-m/sinatra-activerecord宝石仅供sqlite3的,据我所看到的.

我不确定我是需要模型还是只需要简单的SQL查询.但让它一起工作对我有很大的帮助.

mysql activerecord sinatra

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

mercurial-server:要求密码为ssh

我正在尝试使用来自LShift的mercurial-server在我的服务器(Debian Lenny)上管理我的mercurial repos.我正在使用本教程:http://kurtgrandis.com/blog/2010/03/20/gitosis-for-mercurial/

但是当我尝试克隆hgadmin repo时,ssh会要求我输入密码.

hg clone ssh://hg@MyMercurialServer/hgadmin
Run Code Online (Sandbox Code Playgroud)

但我从来没有为hg用户设置密码.它是使用apt-get安装创建的.通常,身份验证应该使用我的公共ssh密钥(从mercurial-server复制到keys/root目录).但似乎mercurial-server不使用我的公钥.我也刷了特权

sudo -u hg /usr/share/mercurial-server/refresh-auth
Run Code Online (Sandbox Code Playgroud)

将公钥复制到mercurial-server keys/root目录后.此外,我找不到mercurial-server的任何日志文件.有谁知道,如何解决这个问题?

谢谢.

ssh mercurial debian ssh-keys mercurial-server

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

如何使用外连接和笛卡尔积来连接三个表

我在PostgreSQL数据库中有三个表:用户,活动,场地.

Users:
- id
- name

Visits:
- id
- user_id
- location_id

Venues:
- id
- name
Run Code Online (Sandbox Code Playgroud)

我想检索特定用户的所有活动,如果用户尚未访问某个位置,则检查该事件.我尝试了一些连接:

SELECT venues.id as venue, COUNT(activities.id) as visits
FROM users
RIGHT OUTER JOIN activities ON users.id=activities.user_id
RIGHT OUTER JOIN venues ON activities.venue_id=venues.id
WHERE users.id=1234
GROUP BY venues.id
ORDER BY venues.id
Run Code Online (Sandbox Code Playgroud)

我希望当用户没有访问某个位置时(=活动中没有条目),访问变量包含0,如果用户访问过该位置,则活动计数.

但我只获得用户访问过的位置:

venue | visits
  1       3
  2       4
  3       22
  4       1
Run Code Online (Sandbox Code Playgroud)

我想,RIGHT OUTER JOIN将从右侧返回所有条目,但事实并非如此.

sql database postgresql

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

Middleman链轮指纹

我正在使用带有链轮的中间人将我的js和css文件打包成一个文件.这很好用.但我想知道是否可以从中间人的链轮启用指纹功能.

例如,我的文件all.js,其中所有内容都被编译,重命名为all-4e17d33ff76d744900c2691a71ed83e4.js.

如果可以使用图像,这也会很棒.

sprockets middleman

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

ui-router: Parent's resolve not called when state changes

in ui-router, when a state changes it should call all its parent resolves. This works the first time a state changes. But for the second time, the resolves of the parent aren't called (maybe because they already resolved before).

This is the state configuration

var app = angular.module('plunker', ['ui.router']);

app.config(function($stateProvider) {
  $stateProvider
  .state('root', {
    abstract: true,
    resolve: {
      preloadData: function() {
        console.log("preloadData");
        return true;
      }
    }
  })
  .state('root.home', {
    resolve: {
      test: function() {
        console.log('Home')
        return true;
      }
    }
  }) …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs angular-ui-router

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

显示像background-size:contains的img标签

是否有可能获得background-size: containimg标签类似的效果?

我想在固定宽度/高度div容器内显示产品图片,这些容器有各种尺寸(方形,纵向,横向).图片应该

  • 始终显示整个图像,不应裁剪任何内容
  • 水平和垂直对齐

这是什么呢background-size: contain.不幸的是,我必须使用一个img标签(各种原因,从我使用的框架到SEO的东西).

在这个plnkr中你可以看到问题以及它应该是什么样子(使用background-size)http://plnkr.co/edit/k9Nv4ELoZgYCaQfVuSDQ?p=preview

  1. 看起来不错
  2. 应该垂直居中
  3. 裁剪,但应显示其高度的100%

CSS:

.product {
  background-color: green;
  border: 1px solid blue;
  width: 200px;
  height: 200px;
  overflow: hidden;
  margin-bottom: 20px;
}

.product img {
  width: 100%;
}
Run Code Online (Sandbox Code Playgroud)

注意:不知何故,我无法插入HTML标记,它显示的图像不是源代码.请看看plnkr.

编辑:

  • 这应该只适用于CSS,没有JS.
  • 支持所有现代浏览器,包括IE 10

html css

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

Vim Ack搜索亮点

我正在使用MacVim和ack插件(https://github.com/mileszs/ack.vim).我已经更新了我的插件和Vim本身,现在当我搜索某些东西时,搜索栏的高亮颜色是绿松石(见截图),你无法真正阅读文本.

我已经阅读了ack帮助和一些线程,但我找不到可以调整颜色的选项.

如何将其更改为旧颜色?在此输入图像描述

vim

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

在安装了 gems 的 docker 中运行 ruby​​ 脚本

在 docker 容器中运行需要一些 gem 的 ruby​​ 脚本的快速方法是什么?

我经常遇到想尝试一个新的gem,或者写一个简短的脚本,又不想在本地安装gem的情况。我的第一个想法是编写一个Dockerfile并构建图像,例如

FROM ruby:latest

RUN gem install httparty
COPY test.rb /usr/app/

CMD ["ruby", "/usr/app/test.rb"]
Run Code Online (Sandbox Code Playgroud)

test.rb

require "httparty"
puts HTTParty.get("https://now.httpbin.org/").body
Run Code Online (Sandbox Code Playgroud)

然后运行docker build -t run-ruby-with-gems .并在构建之后docker run -it --rm run-ruby-with-gems

这有效,但不方便。所以也许有一些聪明的单行代码或其他任何东西可以使快速运行 ruby​​ 脚本的整个过程变得更容易。

ruby docker

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

行号列表作为vim的输入

我有一个文件中的行号列表,例如

1
5
3
Run Code Online (Sandbox Code Playgroud)

我想为另一个文件中的每个行号添加相同的注释:

test1 # comment
test2 # comment
test3
test4
test5 # comment
Run Code Online (Sandbox Code Playgroud)

有没有办法逐行处理文件作为vim中行号的输入,并对其执行一些操作?我知道如何通过使用来定位单行

5,5s/$/ # comment/ 
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何从文件中获取行号到vim命令.

vim

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

如何在门卫中执行仅应用程序身份验证(oauth2)

Twitter为他们的api提供仅限应用程序的身份验证:https://dev.twitter.com/docs/auth/application-only-auth

Twitter为应用程序提供代表应用程序本身发出经过身份验证的请求的能力(而不是代表特定用户)

我想在Rails中对门卫做同样的事情,但我不知道该怎么做.似乎只能通过回调网址对用户进行身份验证,但如何使用应用程序上下文访问我的API(仅使用应用程序ID和应用程序密钥)

我的第一个想法是使用应用程序的ID和密码进行密码凭证登录,以获取属于该应用程序的访问令牌.这是一个坏主意吗?从安全的角度来看是否安全?我想知道因为应用程序的秘密在db中保存为纯文本,这是用户身份验证的禁忌.

ruby-on-rails oauth oauth-2.0 ruby-on-rails-4 doorkeeper

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

Google Analytics V4 API:获取过去 30 天的数据

我正在使用 google Analytics 的报告 api v4。我想在后端显示一个图表,其中显示一些指标的过去 30 天。问题是,我只得到累积/求和值。

例如,这是我发送到 api 的正文

  body = {
    reportRequests: [{
      dateRanges: [
        {
          startDate: Date.parse('2016/10/01'),
          endDate: Date.parse('2016/10/31')
        }
      ],
      viewId: '12345',
      metrics: [{ expression: "ga:users" }],
      dimensions: [{ name: "ga:pagePath" }]
    }]
  }
Run Code Online (Sandbox Code Playgroud)

然后我得到很多 URL(当然,我没有过滤输出),如下所示:

{"reports"=>
  [{"columnHeader"=>
     {"dimensions"=>["ga:pagePath"],
      "metricHeader"=>
       {"metricHeaderEntries"=>[{"name"=>"ga:users", "type"=>"INTEGER"}]}},
    "data"=>
     {"rows"=>
       [{"dimensions"=>["/"], "metrics"=>[{"values"=>["2854"]}]},
        {"dimensions"=>["/?extlink_img=0"], "metrics"=>[{"values"=>["113"]}]},
        {"dimensions"=>["/?v=338"], "metrics"=>[{"values"=>["12"]}]},
        ...
Run Code Online (Sandbox Code Playgroud)

但是,当我想要最近 30 天的用户数以获取特定路线(例如)时,我应该如何查询 api /?这可能吗?

analytics google-analytics google-analytics-api universal-analytics

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

Ruby:定义自己的转换方法/协议

我喜欢使用Ruby内置的核心转换

Integer("2")
Float("2.22")
Pathname("/etc/hosts")
Run Code Online (Sandbox Code Playgroud)

但是如何为类定义自己的转换方法呢?我有以下课程

class Foobar
  def initialize
    # ... do some work
  end
end
Run Code Online (Sandbox Code Playgroud)

我希望有一个方法Foobar("my value")将字符串my value转换为一个类Foobar(但是你这样做),或者ArgumentError如果输入不合适则抛出一个.

知道怎么做吗?

ruby

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