小编ped*_*ete的帖子

rails中的简单json输出

我试图在我的页面中包含一个json对象,它将充当javascript对象.

我在控制器中很简单

   def index
   @tasks = User.select("task_id,desc")
   end

在我看来,我以为我能够投入

 var tasks = <%= @tasks.as_json %>

但那个输出

[#<Task task_id: 1, shrtDesc: "task 1">, #<Task task_id: 2, shrtDesc: "task 2">]

我所期待的是

{"task_id":1, "shrtDesc": "task 1"}, {"task_id":2,"shrtDesc":"task 2"}

ruby json ruby-on-rails

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

使用Ruby CSV提取一列

我一直在尝试从csv文件中获取单个列.

我已经阅读了文档,http://www.ruby-doc.org/stdlib/libdoc/csv/rdoc/index.html 但仍然不太了解如何使用它.

如果我使用CSV.table,那么响应速度非常慢CSV.read.我承认我加载的数据集非常大,这正是我只想从中获取单个列的原因.

我的请求目前看起来像这样

@dataTable = CSV.table('path_to_csv.csv')
Run Code Online (Sandbox Code Playgroud)

当我调试时,我收到了回复

#<CSV::Table mode:col_or_row row_count:2104 >

文档说我应该能够使用by_col(),但是当我尝试输出时

<%= debug @dataTable.by_col('col_name or index') %>
Run Code Online (Sandbox Code Playgroud)

它给了我"未定义的方法'col'错误"

有人可以向我解释我应该如何使用CSV?如果有一种方法可以使用'read'代替'table'来更快地获取列?

我正在使用Ruby 1.92,它说它使用的是更快的CS,因此我不需要使用FasterCSV gem.

ruby csv

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

mysql concat with trim

我有一个表格,其中包含标记为地址的单元格中的一堆地址 市.我试图将完整的地址合并为常见的"地址,城市"格式.

有时,在我的数据库中,我将其中一个位置单元格为空.因此,我在我的concat系列中做了一个IFNULL,但我最终得到一个前导或尾随','.我已经尝试了'trim'功能以及我的concat,但有时仍会落后','.

这就是我编写查询的方式

SELECT TRIM(BOTH ',' FROM CONCAT(IFNULL(address,''), ', ', IFNULL(city,''))) FROM locals

知道为什么我会有这种行为吗?有没有更好的方法来构建我的concat语句?

mysql concatenation

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

Windows7英特尔64位上的Python

周末我一直在乱用Python,发现自己几乎回到了我开始的地方.

我特意遇到了easy_install和nltk的问题,给了我关于找不到包等的错误.

我已经尝试过Python 2.6和Python 3.1.

我认为部分问题可能是我在Intel T5750芯片组上以64位模式运行Windows 7.我正在考虑下载用于Windows扩展的Python http://sourceforge.net/projects/pywin32/files/,但不确定要获得哪个版本.为什么包有特定的AMD64,而不是英特尔?

但是,这甚至可能无法解决我的问题.有关让Python在这种环境中工作的任何建议吗?

我目前安装了Python 3.1,并删除了2.6

python installation

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

Rails打开uri在路径上打破

我正在尝试使用open-uri获取网址.

我的代码非常简单

   url = open("http://localhost:3000/descriptions")

   return render :text => url.to_json

当我运行此代码时,我收到超时错误.

当我请求"http:// localhost:3000"时,我得到了我的主页(这是正确的).所以看来这是在某个地方的路径上打破.我已经尝试过使用net-http和uri(不确定这是否会产生影响)我仍然有同样的问题.我想得到一个路径和一个查询,但我似乎无法让它工作.

open-uri ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

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

backbone.js集合没有响应.each

我有什么应该很简单.我创建了一个新的集合,我想将它传递给渲染并将集合模型添加到页面中.

get_results: function(){
    $.getJson(this.url,function(response){
        this.search_results = new Kitchon.Collections.searchList(response);
        console.log(this.search_results);
        this.search_results.each(this.render_match);
    }
},
render_match: function(model){
    console.log(model)
},

这会返回错误

Uncaught TypeError: undefined is not a function

我的收藏品有一个普通的结构

_byCid: Object
_byId: Object
_onModelEvent: function () { [native code] }
_removeReference: function () { [native code] }
length: 7
models: Array[7]
__proto__: o

我已经尝试了很多东西,但是有一件事情可能是我必须通过, this.search_results.models.each(this.render_match);因为那是实际的阵列,但如果我这样做,我会得到一个Uncaught typeError: Object [object Object],[object Object],...

collections backbone.js

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

android不会在web-app中从javascript打开google play链接

我有一个html应用程序,它包含在Phonegap和Android商店中.

我想在应用程序中添加一个应用程序链接,以便用户在更新可用时进行更新.

根据文档,以及SO上的一些结果,在设备上,

< a href="market://details?id=com.myapp.name" > Update App </a>

打开商店,但我需要从javascript打开链接.

我已经尝试了两个window.open,window.location.href但两个打开浏览器,我得到一个URL未找到错误.浏览器中的网址结果是http://market://details...

有人知道为什么或如何直接链接到商店,而不是玩游戏网站?

---------------更新-------------------

我不想在浏览器中打开Play商店,我正在尝试打开本机游戏商店.

我知道这是可能的,因为smartbanner打开了正确的商店. http://jasny.github.io/jquery.smartbanner/

但我无法让它发挥作用.

javascript android hyperlink google-play

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

如果在数组中找不到项目,则使用默认值

所以我的代码试图从对象数组中选择一个对象,如果找不到该对象,我想创建我的默认值。

lead_time = lead_times.select{|d| LeadTimeProfile.new unless d.day_of_week == day }
Run Code Online (Sandbox Code Playgroud)

然而,据我所知,这并没有给我返回默认的 LeadTimeProfile。

有没有办法做到这一点?还是我做对了?

ruby select

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

嵌套弹性框中的百分比高度

我有一个非常好的可调节界面与flexbox一起工作,用户可以调整面板的高度和宽度.但是,我想更改当前使用像素的面板高度来使用百分比,因此当他们更改一个面板时,其他面板会流动.

一切都适用于宽度,但当我使用高度%它会打破.

这是一个显示破碎%的小提琴.

http://jsfiddle.net/59trW/1/

这个小提琴在红色元素上设置了50%的高度,但根本不可见.

这是css

.outer-flex {
    position: absolute;
    top: 0;
    bottom: 0;
    left:0;
    right:0;
    display: flex;
    -webkit-box-align: stretch;
    flex-direction: row;
}
.left-panel {
    width: 30px;
    background-color: #5eddd8;
}

.flex {
    display: flex;
    flex:1;
    -webkit-box-align: stretch;
    flex-direction: column;
    background-color: #64b92a;
    min-height: 1px;
}

.fixed {
    height: 20px;
    background-color: #ecf0f1;
}
.top-box {
    height: 30%;
    background-color: red;
}

.bottom-box {
    flex: 1;
}
Run Code Online (Sandbox Code Playgroud)

和HTML

    <div class="outer-flex">
    <div class="left-panel">
      this is ok.
    </div>
   <div class="flex">
       <div class="fixed">doesn't move</div>
      <div class="top-box">top box</div> …
Run Code Online (Sandbox Code Playgroud)

css percentage flexbox

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

使用ajv验证json模式时获取错误类型/值

我正在尝试使用json模式来验证api的json.

我找到了ajv库,它似乎是node.js最受欢迎的.

刚刚获得基础知识,我已将我的架构定义为

const viewSchema = {
    "type": "object",
    "properties":{
        "title": {"type": "string"}
    }
}

export default viewSchema;
Run Code Online (Sandbox Code Playgroud)

然后我将它导入我的验证器

import Ajv from 'ajv';

import viewSchema from './viewSchema';
const ajv = Ajv({allErrors: true});
let validate = ajv.compile(viewSchema);

const validateView = viewJson => {
    var isValid = validate(viewJson);
    console.log('------ text',ajv.errorsText(), isValid)
    if(isValid) return true;
    return ajv.errorsText();
}

export default validateView;
Run Code Online (Sandbox Code Playgroud)

并使用mocha(使用mochaccino)测试输出

describe('validate view', () => {
    it('should error if title is not a string', () => {
        console.log('-----------',validateView({"title":122}))
        expect(validateView({"title":122}).errors).toContain('should be string');
    }); …
Run Code Online (Sandbox Code Playgroud)

json jsonschema ajv

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