小编Qui*_*son的帖子

从一串JSON而不是JSON文件渲染D3图

我试图从我的Rails应用程序渲染以下树形图:http: //bl.ocks.org/mbostock/4063570

我有一个具有许多属性的模型,但我想手动嵌套这些属性,只需使用字符串插值来构建我自己的JSON字符串,然后直接将其传递给d3.

这是我的代码:

    <%= javascript_tag do %>
        var width = 960,
        height = 2200;

        var cluster = d3.layout.cluster()
        .size([height, width - 160]);

        var diagonal = d3.svg.diagonal()
        .projection(function(d) { return [d.y, d.x]; });

        var svg = d3.select("body").append("svg")
        .attr("width", width)
        .attr("height", height)
        .append("g")
        .attr("transform", "translate(40,0)");

        **d3.json("/assets/flare.json", function(root) {**
        var nodes = cluster.nodes(root),
        links = cluster.links(nodes);

        var link = svg.selectAll(".link")
        .data(links)
        .enter().append("path")
        .attr("class", "link")
        .attr("d", diagonal);

        var node = svg.selectAll(".node")
        .data(nodes)
        .enter().append("g")
        .attr("class", "node")
        .attr("transform", function(d) { return "translate(" + …
Run Code Online (Sandbox Code Playgroud)

json d3.js

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

通过电子邮件向WickedPDF发送电子邮件

我正在尝试以横向格式发送.pdf.我一直在使用WickedPdf.new.pdf_from_string方法来尝试这样做.即使我指定横向格式,电子邮件的PDF也是纵向的.

如果有人能告诉我实现这一目标的方法,我将非常感激.

梅勒:

class ProjectMailer < ActionMailer::Base
  def email_mindmap_process(project, user, unused_list_items_column1, unused_list_items_column2)
    @project = project
    @user = user
    mail(:subject => "You've received a MindMap from #{@user.email}!", :to => @project.destination_email) do |format|
      format.pdf do
        attachments["#{@project.title}.pdf"] = WickedPdf.new.pdf_from_string(render_to_string(:pdf => "MindMap", :template => 'projects/show.pdf.html.erb', :orientation => 'Landscape', :locals => {:project => @project, :user => @user }))
      end
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

控制器:

def email_mindmap_process
  @project = Project.find(params[:id])
  @user = current_user
  begin
    ProjectMailer.email_mindmap_process(@project, @user, @unused_list_items_column1, @unused_list_items_column2).deliver
    flash[:notice] = "We have emailed your MindMap to #{@project.destination_email}" …
Run Code Online (Sandbox Code Playgroud)

pdf ruby-on-rails actionmailer wicked-pdf

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

标签 统计

actionmailer ×1

d3.js ×1

json ×1

pdf ×1

ruby-on-rails ×1

wicked-pdf ×1