我想知道Docker的图像在我的本地主机中存储的位置.我可以在不使用Docker-Hub或者使用Dockerfile"真正的"Docker-Image的情况下共享我的Docker-Image吗?当我将Docker-Image推送到Docker-Hub时,究竟发生了什么?
我试图让我的代码变得更简洁,更清洁.问题是,在一个功能,那就是工作不同structs,那implements一个interface.
在某些情况下,我需要model变量来实现结构(rowModel的切片)([] rowModel),有时我需要使用接口中的方法.代码并不简短,对不起.所以我把主要评论放在下面的代码中.
这是界面:
type StatModel interface {
FilterData(Filter)
ClusterData(Filter)
CountDataForChart(string)[]ChartElement
GroupByTreeGroups(Filter)[]OrgPack
}
type StatRow interface {
Count( name string) float64
}
Run Code Online (Sandbox Code Playgroud)
此接口是为方法调用创建的,并且可以缩短代码.但是接口不能在OOP中将字段或结构作为Abstruct类.其中一个模型在这里:
type NoaggModel []NoaggRow
type NoaggRow struct {
Date string
Hour int
Id_user int
Id_line float64
Id_region int
Id_tree_devision int
N_inb float64
N_out float64
N_hold float64
N_abandon float64
N_transfer float64
T_inb float64
T_out float64
T_hold float64
T_ring float64
T_acw float64
T_wait float64
}
type FcrModel []FcrRow
type FcrRow struct { …Run Code Online (Sandbox Code Playgroud) 我试图通过以下方式创建一片地图.
keyvalue := make(map[string]interface{})
keyvalueslice := make([]keyvalue, 1, 1)
Run Code Online (Sandbox Code Playgroud)
我试图创建它就像创建字符串切片的方式一样,但是我收到一个错误,说keyvalue is not a type.我正在创建此切片以便keyvalueslice稍后将数据附加到变量.
有人可以解释什么是错的吗?
我在Windows上运行3.1.2
当我尝试将'Paginate'添加到我的项目中时,我在cmd中收到错误
弃用:您似乎已启用分页,但您尚未包含该
jekyll-paginate宝石.确保您具有gems: [jekyll-paginate]配置文件.
我已经jekyll-paginate (1.1.0)和paginate (4.0.0)安装它仍然给这个错误.
这是我的_config.yml文件:
paginate: 4
paginate_path: '/blog/page:num/'
Run Code Online (Sandbox Code Playgroud)
还有我的index.html页面
{% for post in paginator.posts limit: 4 %}
Run Code Online (Sandbox Code Playgroud)
我该怎么检查,解决这个问题?
我是golang的新手,并试图理解主要原则并使用chanels编写基于gouroutines的代码.
在我使用的其他语言中没有这样的乐器,我想知道这样的错误就像恐慌......
我的代码:
package main
import "fmt"
import (
"time"
)
type Work struct {
x,y,z int
}
func worker(in <-chan *Work, out chan<- *Work){
for w := range in {
w.z = w.x + w.y
time.Sleep(time.Duration(w.z))
out <-w
}
}
func sendWork(in chan <- *Work){
var wo *Work
wo.x, wo.y, wo.z = 1,2,3
in <- wo
in <- wo
in <- wo
in <- wo
in <- wo
}
func receiveWork(out <-chan *Work ) []*Work{
var slice []*Work
for …Run Code Online (Sandbox Code Playgroud) 我在Go中相当陌生,但是很努力。
我正在尝试编写一些logick,需要检查struct的属性是否仅包含一个元素,或者第一个元素只有一个孩子。
主要结构是这样的:
type ChartOptins struct {
Filters Filter `json:"filters"`
Charts interface{} `json:"charts"`
}
Run Code Online (Sandbox Code Playgroud)
图表天生就是由以下结构数组组成:
$filters = array(
"filters" => array(
"DayStart" => "12-01-2015",
"DayEnd" => "12-05-2015",
"TimePeriods"=> array(
array("qqq","www"),
),
"lines" => array(
"first","avokado","drunduki"
)
),
"charts" => array(
"noagg" => array(
array(
"name" => "HOLD",
"type" => "line"
),
array(
"name" => "UKKR",
"type" => "line"
),
array(
"name" => "SVO",
"type" => "line"
),
),
"oracle" => array(
array(
"name" => "TDD",
"type" => "line"
),
) …Run Code Online (Sandbox Code Playgroud) 我现在比较新,我在这个网站上搜索了这个问题,并且回答了问题,但是无法对我的案例实施这些答案.我有一个代码:
func receiveWork(out <-chan Work) map[string][]ChartElement {
var countedData map[string][]ChartElement
for el := range out {
countedData[el.Name] = el.Data
}
fmt.Println("This is never executed !!!")
return countedData
}
Run Code Online (Sandbox Code Playgroud)
这种方法之外的结构没有麻烦.也map不会执行(如测试恐慌这里).我知道麻烦在于将数据递增到结构中.
有一些goroutines,正在向通道发送数据,countedData方法rgabs all,应该像这样制作一个地图:
map =>
"typeOne" =>
[
ChartElement,
ChartElement,
ChartElement,
],
"typeTwo" =>
[
ChartElement,
ChartElement,
ChartElement,
]
Run Code Online (Sandbox Code Playgroud)
如何以正确的方式实现这种插入?
我所拥有的:Red Hat 6服务器,具有TCPS连接设置的远程Oracle数据库,从rpms安装的Oracle Instant Client(基本,odbc,sqlplus)。
我正在尝试设置Oracle Instant Client以连接到远程数据库。输入命令时:
/usr/lib/oracle/11.2/client64/bin/sqlplus /@AVAYAPDSDB
Run Code Online (Sandbox Code Playgroud)
我得到错误:
SQL*Plus: Release 11.2.0.4.0 Production on Sat Aug 29 12:04:39 2015
Copyright (c) 1982, 2013, Oracle. All rights reserved.
ERROR: ORA-28759: failure to open file
Run Code Online (Sandbox Code Playgroud)
不幸的是,我附近没有工程师可以帮助我解决这个问题,所以我真的希望在堆栈社区中。
搜寻一段时间,然后搜索对我有帮助的所有内容,因为我意识到跟踪sqlplus请求将是一个不错的起点。所以现在它的痕迹看起来像这样:
(1309189888) [29-AUG-2015 12:04:39:133] --- TRACE CONFIGURATION INFORMATION FOLLOWS ---
(1309189888) [29-AUG-2015 12:04:39:133] New trace stream is /tmp/ora/cli_30063.trc
(1309189888) [29-AUG-2015 12:04:39:133] New trace level is 16
(1309189888) [29-AUG-2015 12:04:39:133] --- TRACE CONFIGURATION INFORMATION ENDS ---
(1309189888) [29-AUG-2015 12:04:39:133] --- PARAMETER SOURCE INFORMATION …Run Code Online (Sandbox Code Playgroud) 我在部分代码中遇到了麻烦.我正在写revel框架(要清楚).这是一个工作日常规,我希望它做几件事:
根据来源,切换stat变量的struct类型.我做了一个开关,但在所有其他代码都正确之前,我真的不知道交换机是否写得正确.
我获取日期的缓存,并将其放入新的工作项.
我发送工作到频道
这是我现在得到的:
func worker(in <-chan Task, out chan <- Work, wg *sync.WaitGroup) {
for t := range in {
for sourceName, charts := range t.Request.Charts {
var stat interface{}
switch sourceName {
case "noagg":
stat = stat.([]NoaggModel)
case "oracle":
stat = stat.([]OracleModel)
default:
panic("Invalid type for Work model!")
}
w := Work{Name:"", Data:""}
err := cache.Get(string(sourceName)+"_"+string(t.Date), &stat);
for chart := range charts{
w.Name = chart["name"]
if err == nil{
w.Data = countDataByName( stat, t.Request.Filters, string(chart["name"]))
}
out …Run Code Online (Sandbox Code Playgroud) 我不明白处理恐慌的最佳方法是什么。我可以编写自己的代码panic("bad data or empty source"),并且我将在输出中确定代码在这个位置失败,但是如何处理在非我的方法中生成的恐慌。
现在我有这样的错误:
\nC:/gocode/src/github.com/revel/revel/panic.go:26 (0x4975a4) handleInvocationPanic: c.Response.Out.Write(debug.Stack()) \nC:/gocode/src/github.com/revel/revel/panic.go:12 (0x4b60ca) PanicFilter.func1: handleInvocationPanic(c, err) \nc:/go/src/runtime/asm_amd64.s:437 (0x45cc75) call32: CALLFN(\xc2\xb7call32, 32) \nc:/go/src/runtime/panic.go:423 (0x42ec17) gopanic: reflectcall(nil, unsafe.Pointer(d.fn), deferArgs(d), uint32(d.siz), uint32(d.siz)) \nC:/gocode/src/github.com/revel/revel/intercept.go:93 (0x4b6061) InterceptorFilter.func1: panic(err)\nc:/go/src/runtime/asm_amd64.s:437 (0x45cc75) call32: CALLFN(\xc2\xb7call32, 32)\nc:/go/src/runtime/panic.go:423 (0x42ec17) gopanic: reflectcall(nil, unsafe.Pointer(d.fn), deferArgs(d), uint32(d.siz), uint32(d.siz))\nc:/go/src/runtime/panic.go:42 (0x42d280) panicmem: panic(memoryError)\nc:/go/src/runtime/signal_windows.go:161 (0x44233d) sigpanic: panicmem()\nC:/gocode/src/github.com/oculus/libs/funcs.go:13 (0x4e0ca5) GetDatesInRange: fmt.Println(err.Error())\nC:/gocode/src/github.com/oculus/rest/app/controllers/kpi.go:97 (0x4e3b2f) KpiCtrl.GetNoagg: dates, errors := libs.GetDatesInRange(request.Filters.DayStart, request.Filters.DayEnd) :97 (0x4e9f12)\nc:/go/src/runtime/asm_amd64.s:437 (0x45cc75) call32: CALLFN(\xc2\xb7call32, 32)\nc:/go/src/reflect/value.go:432 (0x471591) Value.call: call(frametype, fn, args, uint32(frametype.size), uint32(retOffset))\nc:/go/src/reflect/value.go:300 (0x470258) Value.Call: return v.call("Call", …Run Code Online (Sandbox Code Playgroud)