小编rud*_*ph9的帖子

yaml文件中的yaml前置物

我只尝试使用haml-jekyll-extension,但我不知道如何包含yaml前置字符?我有以下几点:

---
user: hello
---
!!!
%html
  %title RudyIndustries
  %body
    %h1 Hello World! {{ page.user }}
Run Code Online (Sandbox Code Playgroud)

但最终将其编译为以下html:

user: hello
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <title>RudyIndustries</title>
  <body>
    <h1>Hello World! {{ page.user }}</h1>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

如何标记yaml前端问题,使其正确编译为html?

html haml yaml jekyll jekyll-extensions

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

从Rakefile打开Vim?

我正在为个人笔记创建一个期刊申请,并在我的内容中有以下内容Rakefile:

task :new do
  entry_name = "Entries/#{Time.now.to_s.gsub(/[-\ :]+/, '.').gsub(/.0500+/,'')}.md"
  `touch #{entry_name}`
  `echo "# $(date)" >> #{entry_name}`
end
Run Code Online (Sandbox Code Playgroud)

我想要包括的最后一部分是Vim文本编辑器的打开,但是我无法弄清楚如何打开它,就像我直接从bash终端调用它一样.

我试过了:

vim #{entry_name}
Run Code Online (Sandbox Code Playgroud)

但不幸的是,我认为这两者都将其作为后台进程打开.

我一直在引用" 在Ruby中运行Shell命令的6种方法 ".

ruby rake

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

发送带有附件的电子邮件

我有一封邮件,如下所示:

class Payments::LateNoticesMailer < AsyncMailer
  def notice(payment_id)
    @payment = PaymentDecorator.find(payment_id)
    @invoice = @payment.invoice
    template = "payments/invoices/#{@payment.made_with_type.downcase}/show"

    attachments["#{@payment.invoice_filename}.pdf"] =
      WickedPdf.new.pdf_from_string( render_to_string( pdf:      @payment.invoice_filename,
                                                       formats:  [:pdf],
                                                       template: template,
                                                       layout:   "layouts/pdf.html"))

    mail to:      @payment.payer_email,
         from:    '"RentingSmart" <no-reply@rentingsmart.com>',
         cc:      @payment.landlord_email,
         subject: "*** Your rent payment of #{@payment.amount_due} is overdue ***"
  end
end
Run Code Online (Sandbox Code Playgroud)

我使用SendGrid发送。这是我的问题,如果我通过Gmail打开电子邮件,则一切正常,电子邮件文本在那里,并且附件已附上。但是,如果我使用OSX的Mail.app或在iPhone上打开它,则会得到以下信息:

这是MIME格式的多部分消息...

有人有提示吗?我认为我正确地遵循了Rails指南。

这是我打的电话 Payments::LateNoticesMailer.notice(payment.id).deliver

ruby-on-rails actionmailer email-attachments sendgrid wicked-pdf

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

Ruby暂停线程

在ruby中,是否可能导致线程从另一个并发运行的线程暂停.

下面是我到目前为止编写的代码.我希望用户能够输入'pause thread'和sample500线程来暂停.

#!/usr/bin/env ruby

# Creates a new thread executes the block every intervalSec for durationSec.
def DoEvery(thread, intervalSec, durationSec)
    thread = Thread.new do
        start = Time.now

        timeTakenToComplete = 0
        loopCounter = 0
        while(timeTakenToComplete < durationSec && loopCounter += 1)

            yield

            finish = Time.now

            timeTakenToComplete = finish - start

            sleep(intervalSec*loopCounter - timeTakenToComplete)    
        end
    end
end

# User input loop.
exit = nil
while(!exit)
    userInput = gets
    case userInput
    when "start thread\n"
        sample500 = Thread
        beginTime = Time.now
        DoEvery(sample500, 0.5, …
Run Code Online (Sandbox Code Playgroud)

ruby multithreading thread-safety

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

Coffeescript:动态创建调用方法的类的实例

我正在使用面向对象的coffeescript构建Node.js应用程序.

我有一个super class静态方法,如:

class RedisObject
 @find: (id, cb) ->
    client.HGETALL "#{@className()}|#{id}", (err, obj) =>
      unless err
        cb(new RedisObject(obj, false))
Run Code Online (Sandbox Code Playgroud)

有一个类似的子类

  class User extends RedisObject
Run Code Online (Sandbox Code Playgroud)

当我调用find()时,User class我希望它传递一个实例User而不是RedisObject回调函数.

我试图通过使用调用方法来获取实际类的类名来实现这一点

@constructor.name
Run Code Online (Sandbox Code Playgroud)

并用于eval()从中生成实例 - 但问题是从超类中未定义子类.

如何find根据调用它的类来实现获取方法返回的不同类型实例的行为,而不必在每个子类中重写它?

javascript oop inheritance node.js coffeescript

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

SupportMapFragment - 映射片段可见性

当我尝试show()和hide()多个地图片段时,我的问题出现了.使用show()/ hide()不会更改地图.片段可以被删除或隐藏但保留在屏幕中(脏).

屏幕: 在此输入图像描述

这里是相关问题

我该如何纠正这个问题?

android google-maps android-fragments google-maps-android-api-2

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

承诺解决后承诺中的超时循环永远不会执行?

我遇到了一个问题,即setTimeout从已解决的承诺发送的回调永远不会被执行.

我想我有以下几点:

class Foo {
  constructor(foo) {
    this.foo = foo;
  }

  async execUntilStop(callback) {
    const timeoutLoopCallback = () => {
      if (this.stopExec) return;
      callback({ data: 'data' });
      setTimeout(timeoutLoopCallback, 10);
    };
    setTimeout(timeoutLoopCallback, 10);

    return { data: 'data'};
  }

  stop() {
    this.stopExec = true;
  }
}

const myFunc = async function () {
  let callbackCalled = false;
  const callback = () => callbackCalled = true;
  foo = new Foo('foo');
  foo.execUntilStop(callback);
  const hasCallbackCalled = async () => callbackCalled;

  while(!(await hasCallbackCalled())) null; …
Run Code Online (Sandbox Code Playgroud)

javascript asynchronous event-loop async-await es6-promise

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

杰基尔 - 将内容分成两列

我有一个基本的布局页面模板:

---
layout: default
---

<header class="sidebar">
    {{ page.title }}
</header>

<section class="content">
    {{ content }}
</section>
Run Code Online (Sandbox Code Playgroud)

我使用它作为页面模板的页面只是Markdown,它被放入<section>块中.

我正在寻找一种方法将我的所有页面内容保存在一个文件中,但是我可以定义单独的内容,<header>从页面模板中放入标记.

有没有办法做到这一点,并将所有页面的内容保存在一个文件中?

ruby liquid jekyll github-pages

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

SASS编译空CSS文件?

我正在尝试将这小块SCSS编译为CSS:

$font-size: 16px;
$em: $font-size / 1em;

$column: 48px;
$gutter: 24px;

 $cols1: ( 1 * ($column + $gutter) - $gutter) / $em;
 $cols2: ( 2 * ($column + $gutter) - $gutter) / $em;
 $cols3: ( 3 * ($column + $gutter) - $gutter) / $em;
 $cols4: ( 4 * ($column + $gutter) - $gutter) / $em;
 $cols5: ( 5 * ($column + $gutter) - $gutter) / $em;
 $cols6: ( 6 * ($column + $gutter) - $gutter) / $em;
 $cols7: ( 7 …
Run Code Online (Sandbox Code Playgroud)

css sass

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

如何从ModalViewController PushViewController

我有FavouriteViewController一个单击按钮的按钮我正在呈现一个模态调用的视图LoginViewController(使用故事板)

在这个页面(LoginViewController),我再次有按钮,点击我想推我的视图控制器.

可能吗 ?

iphone pushviewcontroller ipad modalviewcontroller ios

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