【发布时间】:2015-11-22 23:28:04
【问题描述】:
我有一个“目的地”列表。每个目的地旁边都有一个 LIKE 按钮以及一个喜欢的计数。我能够让这个“喜欢系统”在本地工作。但是,一旦部署到heroku,“点赞数”就会显示为“未定义”,然后每当您单击点赞按钮时,点赞数就会变为“NaN”。如何让点赞系统在我的 heroku 应用上运行?
在我的 javscript 控制台中,我注意到没有应该有的 like_count 列。但是我的迁移和架构文件另有说明...
Schmea.rb 文件:
create_table "destinations", force: :cascade do |t|
t.string "name"
t.string "address"
t.time "start_time"
t.date "date"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "trip_id"
t.integer "day_id"
t.integer "like_count"
t.integer "duration"
t.time "end_time"
结束
我在一个 javscript 文件中实现了点赞系统:
var like_cell = row.insertCell(2);
like_cell.innerHTML = '<input type="button" id="like-btn" type="button" value = "Like"</input>';
var like_count_cell = row.insertCell(3);
like_count_cell.innerHTML = dest.like_count;
$('#like-btn').click(function() {
dest.like_count += 1;
like_count_cell.innerHTML=dest.like_count;
console.log('hi');
console.log(dest.like_count);
console.log(dest);
sortTable();
});
function sortTable(){
var tbl = document.getElementById("destTable").tBodies[0];
var store = [];
for(var i=1, len=tbl.rows.length; i<len; i++){
var row = tbl.rows[i];
store.push([table.rows[i].cells[3].innerHTML, row]);
}
store.sort(function(x,y){
return y[0] - x[0];
});
for(var j=0, len=store.length; i<len; i++){
tbl.appendChild(store[j][1]);
}
table = tbl;
store = null;
}
【问题讨论】:
-
Javascript 文件是否正在加载?
-
是的。请参阅我上面的编辑。我的数据库文件有问题吗?
-
转到网络选项卡,查看服务器返回的内容。并修复输入标签中的代码。
标签: javascript ruby-on-rails heroku voting-system