我一直在努力寻找有关这方面的信息,因为StackOverflow和其他相关主题上发布的很多链接都是404.Github API仅说明了如何从命令行执行操作,并且我发现的任何宝石都没有给出这种支持.但是,我知道这是可能的,因为我以前见过它.
我如何获取用户当前的Github登录信息?也就是说,如果用户登录到Github,我想找到它并在我的网站中使用他们的一些用户信息.如果他们没有登录,我想连接到Github登录.
是否有这样的宝石,如果有,它是什么以及它是如何工作的(如果没有足够的文档)?如果没有,那么我如何使用Github API在Ruby中执行此操作?
我正在尝试用Java编写一个3x3平方移拼图解算器.但是,我被困在我移动块的部分 - 我一直在用我正在使用的算法结束一堆新的空白空间.经过一些测试后,我确定这是因为,尽管我使用了clone()命令,但当我更改"current"时,v的数组仍然受到影响.有谁知道这是为什么以及如何解决它?我认为在使用clone之后,我可以更改新数组而不会影响旧数组.
if (!rightwall)
{
int[][] current = v.state.clone();
current[x][y] = current[x][y + 1];
current[x][y + 1] = 0;
State w = new State(current);
w.distance = v.distance + 1;
w.path = v;
System.out.println("Right Shift:");
w.print();
q.insert(w);
}
Run Code Online (Sandbox Code Playgroud)
State是一个表示二维数组的类以及一些属性 - State的代码的第一部分是
public class State {
int[][] state = new int[3][3];
int distance = 0;
boolean known = false;
State path = null;
State(int[][] newstate){
state = newstate.clone();
}
Run Code Online (Sandbox Code Playgroud)
v是表示当前位置的状态.然后,w将是在将空白空间与其旁边的空间切换之后创建的"相邻"位置.
q是一个队列.
我正在编写一个非常基本的C程序,试图更好地理解时间库的工作方式,并了解更多关于C.问题是,当我在主函数结束时返回0时,我得到一个段错误.这是该计划的文本:
#include <stdio.h>
#include <time.h>
main()
{
time_t *now;
time(now);
struct tm *tp = localtime(now);
printf("%s", asctime(tp));
return 0;
}
Run Code Online (Sandbox Code Playgroud)
使用gdb我可以看到第10行(返回0)到目前为止一切都很好,我现在只有两个变量和tp.以下是我打印时发生的情况:
(gdb) print now
$7 = (time_t *) 0x7fff5fbff838
(gdb) print tp
$8 = (struct tm *) 0x7fff7b13e470
(gdb) print *now
$9 = 1345338893
(gdb) print *tp
$10 = {
tm_sec = 53,
tm_min = 14,
tm_hour = 21,
tm_mday = 18,
tm_mon = 7,
tm_year = 112,
tm_wday = 6,
tm_yday = 230,
tm_isdst = 1,
tm_gmtoff = -14400, …Run Code Online (Sandbox Code Playgroud) 更新:我的问题得到了解答,但我写了一篇博文,详细说明了我是如何做到这一点的:http: //lathamcity.com/posts/ajaxInRails.html
我有一个页面,显示基于Ruby对象的事物列表.我的目标是进行Ajax调用以获取新的Ruby对象,然后基于此更新列表.
我认为这样做的方法是偏爱.我使用代码中的Rails实例变量使整个列表成为部分文件.然后我想要Ajax调用将相应的实例变量设置为新列表并重新呈现部分.
这是最终目标,但是现在我正在尝试做一个非常基本的版本,我只是将一个实例变量设置为字符串,然后显示字符串.
所以在我的div中,我有:
<% form_tag :action => :go , :method => :get, :remote => true do %>
<%= submit_tag "Go" %>
<% end %>
<div id="test"><%= render(:partial => 'test') %></div>
Run Code Online (Sandbox Code Playgroud)
在views/interface(我的控制器名称)文件夹中有一个_test.erb文件,只有以下行作为其内容:
<%= @test %>
Run Code Online (Sandbox Code Playgroud)
然后在我的控制器中,
def go
@test = "Hello You"
render :update do |page|
page.replace_html "test", :partial => "test"
end
end
Run Code Online (Sandbox Code Playgroud)
当我运行这个时,我得到: Missing template interface/update, application/update
我不太了解render :update,我在谷歌的一个例子中找到了它.
我做错了什么导致了这个问题,我该如何解决?我是以正确的方式解决这个问题还是有更好的方法来做到这一点?
目前我有一个SQL查询,它选择一些列然后执行ORDER_BY ID.
很简单.输出是92,101,105,200,1234
问题是,我尝试使用它的程序只接受以字母数字顺序输入.这意味着我需要它是101,105,1234,200,92.
如何修改SQL查询以按字母顺序排序数字?
我的朋友和我正在使用GitHub进行项目合作,我刚刚下载了他的软件包.他在NetBeans中编写了它,我在Eclipse中使用它.包中的四个类有常规图标,白色页面有蓝色J.但是其他三个有白页,但是有一个蓝色J的轮廓而不是填充的J.这四个常规类都扩展到了类然后是方法/属性树,但是在Package Explorer中根本不扩展三个奇数类.当我尝试引用常规类中的一个奇数类时,即
List<Reminder> list = new ArrayList<Reminder>();
Run Code Online (Sandbox Code Playgroud)
它在类下面添加了一个红色下划线Reminder,当我用光标悬停在它上面时,它告诉我添加一个import语句,但是当我点击它说它不添加import语句的地方时.当我尝试自己输入import语句时,即
import MobiTech.PlaceSaver.Reminder;
Run Code Online (Sandbox Code Playgroud)
它说导入无法解决.用于声明类的语法似乎是正确的:
public class Reminder
{
public Location location;
public String message;
//Reminder radius in meters
double radius = 1.0;
public Reminder()
{
}
public Reminder(Location l, String m)
{
message = m;
location = l;
}
public Reminder(Location l, String m, int r)
{
message = m;
location = l;
radius = r;
}
Run Code Online (Sandbox Code Playgroud)
我不知道发生了什么,有什么想法吗?
>>> 20130708 < ''
True
>>> 20130708 > ''
False
Run Code Online (Sandbox Code Playgroud)
我不确定这是什么解释. 关于词典排序的维基百科文章说明了这一点
u <v如果你是v的前缀
由于""是"20130708"的前缀,我希望"20130708"<""是假的.
我有一个枚举:
public enum X implements Y
我也有一个类
Ybuilder可以创建实例Y,比方说Ybuilder.create(int value)
如何将枚举中的枚举值设置为Y创建的实例Ybuilder?理想情况下,这将是一个简单的事情
public enum X implements Y {
A (Ybuilder.create(0)),
B (Ybuilder.create(1)),
};
Run Code Online (Sandbox Code Playgroud) 这感觉就像一个初学问题,有一个非常明显的答案,但我无法弄清楚我的生活.我在下面尝试创建一个新元素并将其添加到正文中有什么问题?
var newDiv = document.createElement("div");
newDiv.setAttribute("id", "popup");
newDiv.setAttribute("width", "400px");
newDiv.setAttribute("height", "400px");
newDiv.setAttribute("backgroundColor", "red");
document.getElementsByTagName("body")[0].appendChild(newDiv);
newDiv.style.position = "absolute";
newDiv.style.left = "25px";
newDiv.style.top = "25px";
Run Code Online (Sandbox Code Playgroud) 错误是:
TypeError: kernel() takes exactly 3 arguments (4 given)
Run Code Online (Sandbox Code Playgroud)
相应的代码是:
K[i][j] = self.kernel(self, B[i], C[j])
...
def kernel(self, P, Q)
Run Code Online (Sandbox Code Playgroud)
以下行的结果是:
print self: object at 0x....
print len((self, B[i], C[j])): 3
print len((B[i])): 4
print len((C[j])): 4
Run Code Online (Sandbox Code Playgroud)
为什么会说4个参数,我该如何解决呢?