为什么moment.js UTC总是显示错误的日期.例如来自chrome的开发者控制台:
moment(('07-18-2013')).utc().format("YYYY-MM-DD").toString()
// or
moment.utc(new Date('07-18-2013')).format("YYYY-MM-DD").toString()
Run Code Online (Sandbox Code Playgroud)
他们两人都会回归"2013-07-17",为什么它会回归17号而不是18号,这是传递给他们的.
但如果我使用没有utc的momentjs:
moment(new Date('07-18-2013')).format("YYYY-MM-DD").toString()
Run Code Online (Sandbox Code Playgroud)
我回来了"2013-07-18",这也是我在使用moment.js UTC时所期望的.
这是否意味着我们在使用moment.js UTC时无法获得正确的日期?
如何将环境变量从bashrc传递到Ember CLI.我想象你需要条带api键或pusher api-keys的情况,你可以在bashrc中的环境变量中使用它们.如何将api-key传递给Ember CLI.
我尝试process.env在brocfile.js和中使用Node.js environment.js,但是当我尝试在Ember JS控制器中访问它时,属性为null.
在我的environment.js文件中,我添加了,
APP: { apiKey: process.env.KEY }
Run Code Online (Sandbox Code Playgroud)
在我的Ember JS控制器中,我尝试访问它:
import config from '../config/environment';
Run Code Online (Sandbox Code Playgroud)
并设置lkey如下所示的控制器属性,这不起作用:
lkey: config.App.KEY
Run Code Online (Sandbox Code Playgroud)
接下来brocfile.js,我补充说:
var limaKey = process.env.Key;
var app = new EmberApp({key: limaKey});
Run Code Online (Sandbox Code Playgroud)
这仍然无效.
让我们说我的rails模型看起来像这样:
class SalesRelationship < ActiveRecord
end
Run Code Online (Sandbox Code Playgroud)
这是由crossSell继承的,如下所示:
class crossSell < SalesRelationship
end
Run Code Online (Sandbox Code Playgroud)
如何在ember-data中显示此继承关系.这是什么最好的做法:
App.salesRelationship = DS.Model.extend({
name: DS.attr('string')
});
Run Code Online (Sandbox Code Playgroud)
我可以像这样创建一个名为'crossSell'的子类
crossSell = App.salesRelationship({
productName: DS.attr('string')
});
Run Code Online (Sandbox Code Playgroud)
或者像这样
App.salesRelationship.crossSell = DS.Model.extend({
productName: DS.attr('string')
});
Run Code Online (Sandbox Code Playgroud) 从下面的屏幕截图中可以看出,链接未在div的底部对齐.如何对齐按钮编辑,删除,添加购物车 在底部DIV.注意我没有使用表格.
.bottomaligned {position:absolute; bottom:0; margin-bottom:7px; margin:7px;}
.fixedheight { height: 208px; position:relative; border:1px solid; margin:7px;}
Run Code Online (Sandbox Code Playgroud)
下面显示了模板的相关位,用于呈现屏幕截图如下所示的页面.请注意,使用css class ="bottomaligned"仍然没有对齐链接.即使我添加 宽度:300px; 到了css类.fixedheight,它们仍然没有对齐.
<div class="row">
<% @products.each do |product| %>
<div class="col-lg-3 col-sm-4 col-6 fixedheight ">
<div class="bottomaligned">
<%= link_to 'edit', edit_product_path(product), class: "btn btn-danger" %>
<%= button_to "Delete", product, data: {confirm: 'Are u sure?'}, method: :delete, class: "btn btn-danger" %>
<%= button_to "Add to cart", order_items_path(product_id: product) %> …Run Code Online (Sandbox Code Playgroud) 我使用PostgreSQL 9.5和Rails 5.我想查询jsonb下面显示的包含JSON对象数组的列,以返回包含的所有JSON数组元素{"kind":"person"}并执行计数.我使用
的SQL显示在json数据下面.运行查询只返回一个空数组.
这就是我的jsonb数据:
'[
{"kind":"person", "filter_term":"56","selected_attr":"customer"},
{"kind":"email", "filter_term":"marketer","selected_attr":"job_title"}
]'
Run Code Online (Sandbox Code Playgroud)
我想要一个sql查询返回:
data
----------------------------------------------------------------------
'{"kind":"person", "filter_term":"56","selected_attr":"customer"}'
(1 row)
Run Code Online (Sandbox Code Playgroud)
和另一个返回数组的查询,以便我可以在我的应用程序中调用count并在其上循环以创建表单:
data
----------------------------------------------------------------------
'[{"kind":"person", "filter_term":"56","selected_attr":"customer"}]'
(1 row)
Run Code Online (Sandbox Code Playgroud)
我试过这个SQL查询:
"SELECT * FROM \"segments\" WHERE (payload @> '[{\"kind\":\"person\"}]')"
Run Code Online (Sandbox Code Playgroud)
我也试过这个查询:
"SELECT payload FROM segments WHERE payload @> '[{\"kind\":\"person\"}]'::jsonb;"
Run Code Online (Sandbox Code Playgroud)
这是第三个查询:
"SELECT * FROM segments s WHERE s.payload->'\"#{a}\"' @> '[{\"kind\":\"person\"}]';"
Run Code Online (Sandbox Code Playgroud)
该模型:
class Segment < ApplicationRecord
store_accessor :payload,:kind, :filter_term, :selected_model_name, :selected_attr, :limit, :selected_operator …Run Code Online (Sandbox Code Playgroud) 我在后端使用ember-data和activemodel适配器和rails和mongoid(mongodb).每当我向rails应用程序发出请求时,emberjs都会显示返回的数据,但在Chrome开发者控制台中显示:
Assertion failed: You must include an `id` in a hash passed to `push`
Run Code Online (Sandbox Code Playgroud)
这个问题在jsfiddle中重现
我在这个jsfiddle中重现了这个问题.当我使用id而不是_id时,你可以看到同一个jsfiddle工作的不同版本.
后端发送的有效负载
ActiveModel适配器将snake_case start_date转换为camel-case.我已经为ember-data rest-serializer添加了一些自定义代码,以便将_id转换为id,并且在此问题中将代码粘贴到较低的位置.
{"schedules":[
{
"_id":"529f38596170700787000000",
"name":"Hair styling",
"start_date":"2013-12-12"
}
]}
Run Code Online (Sandbox Code Playgroud)
现在虽然返回有效载荷包括ID,如果我进入谷歌cgrome控制台并运行以下commmands并访问_data,它显示的ID是不确定的.
a = App.__container__.lookup("controller:schedules")
b = a.get('content')
Run Code Online (Sandbox Code Playgroud)
我使用控制台中的披露箭头并深入研究_dat对象,这就是我所看到的
_data: Object
id: undefined
Run Code Online (Sandbox Code Playgroud)
自定义序列化代码
我扩展了activemodeladapter以将mongodb的_id转换为id并将其设置为主键.
App.ApplicationSerializer = DS.ActiveModelSerializer.extend({
primaryKey: '_id',
normalize: function(type, hash, prop) {
this.normalizeMongoidId(hash);
return this._super(type, hash, prop); …Run Code Online (Sandbox Code Playgroud) 我有这个无法解释的ActiveRecord :: Relation,未定义的方法错误.我不知道为什么,因为我的模型关联定义很好,并且事件表具有用户表的外键.我尝试使用此修复但它失败了:Rails 3 ActiveRecord :: Relation随机关联行为
class Event < ActiveRecord::Base
belongs_to :user
attr_accessible :event_name, :Starts_at, :finish, :tracks
end
Run Code Online (Sandbox Code Playgroud)
class User < ActiveRecord::Base
has_many :events, :dependent => :destroy
attr_accessible :name, :event_attributes
accepts_nested_attributes_for :events, :allow_destroy => true
end
Run Code Online (Sandbox Code Playgroud)
ActiveRecord::Schema.define(:version => 20101201180355) do
create_table "events", :force => true do |t|
t.string "event_name"
t.string "tracks"
t.datetime "starts_at"
t.datetime "finish"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "user_id"
end
end
Run Code Online (Sandbox Code Playgroud)
NoMethodError in Users#index
undefined method `events' for #<ActiveRecord::Relation:0x4177518>
Extracted source (around …Run Code Online (Sandbox Code Playgroud) 我有两个使用回形针的不同应用程序.在不保存附件或调用回形针的应用程序上,当我上传应用程序时,我会收到此日志
started POST "/users/1/uploads" for 127.0.0.1 at 2011-04-23 13:38:11 +0100
Processing by UploadsController#create as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"t2dRIH4FgOPnLRhpDK0x7iIfjB9Xj5rqkJRPCWZvJ14=", "upload"=> {"document"=>#<ActionDispatch::Http::UploadedFile:0x2beeb08 @original_filename="Essay questions have various requirements.doc", @content_type="application/msword", @headers="Content-Disposition: form-data; name=\"upload[document]\"; filename=\"Essay questions have various requirements.doc\"\r\nContent-Type: application/msword\r\n", @tempfile=#<File:C:/DOCUME~1/Ed/LOCALS~1/Temp/RackMultipart20110423-3980-ycq74p>>}, "commit"=>"Upload", "user_id"=>"1"}
[1m[35mUser Load (0.0ms)[0m SELECT "users".* FROM "users" WHERE "users"."id" = 1 LIMIT 1
[1m[36mUpload Load (0.0ms)[0m [1mSELECT "uploads".* FROM "uploads" WHERE ("uploads".uploadable_id = 1 AND "uploads".uploadable_type = 'User')[0m
Rendered uploads/_uploadify.html.erb (15.6ms)
Rendered uploads/_form.html.erb (31.2ms)
Rendered uploads/new.html.erb within layouts/application (46.9ms)
Completed 200 OK …Run Code Online (Sandbox Code Playgroud) 我想知道是否有人知道如何将CanCan权限序列化为emberjs.我在Jo_Liss看到了这个StackOverflow Q&A,她在那里解释了如何使用active_model_serializers序列化权限(例如CanCan),但是在那个级别停止了.同时此文章链接在这里,谈如何去检查emberjs方许可,但没有怎样就怎样从后端序列化权限到emberjs.
我希望有3种用户角色,即'admin','author','user',并希望在emberjs上使用CanCan权限来控制他们在登录路线中可以访问的内容.
我正在尝试为postgresql jsonb列添加部分索引.jsonb列名为:email_provider.我已尝试在列上添加部分索引,如下所示,但它会抛出不同的错误,例如PG :: UndefinedColumn:ERROR:列"email_povider"不存在,有时它会引发错误:PG :: AmbiguousFunction:ERROR:运算符不是唯一的:未知 - >未知
rails-5迁移中的部分索引如下所示:
add_index :accounts, :name, name: "index_accounts_on_email_provider_kind", using: :gin, where: "('email_provider' -> 'sparkpost' ->> 'smtp_host' = 'www.sparkpost.com') AND ('email_povider' -> 'amazon ses' ->> 'smtp_host' = 'www.awses.com')"
Run Code Online (Sandbox Code Playgroud)
email_provider列的json如下所示:
{
"email_provider": {
"sparkpost": {
"smtp_host": "www.sparkpost.com",
"smtp_port": ""
},
"aws ses": {
"smtp_host": "www.amazon/ses.com ",
"smtp_port": " ",
"username": " ",
"password": " "
}
}
}
Run Code Online (Sandbox Code Playgroud)
该表如下所示:
class CreateAccounts < ActiveRecord::Migration[5.0]
def change
create_table :accounts do |t|
t.string …Run Code Online (Sandbox Code Playgroud) ember.js ×4
ember-data ×2
ember-router ×2
jsonb ×2
postgresql ×2
activerecord ×1
attachment ×1
css ×1
datetime ×1
ember-cli ×1
javascript ×1
momentjs ×1
paperclip ×1
sql ×1
timezone ×1
uploadify ×1