我有一个带有由Tastypie提供的RESTFull服务的Django应用程序.我使用easy_install来安装lxml和defusedxml,所以我可以使用xml而不是json.如果我运行manage.py runserver,它一切正常,但是如果我在同一台机器上通过apache和mod_wsgi运行它,我会从Django说出一个错误配置的错误
Usage of the xml aspects requires lxml and defusedxml
Run Code Online (Sandbox Code Playgroud)
我猜它一定是一个路径问题,但我似乎无法找到任何指向正确方向的东西.有任何想法吗?
这必须是小事,但我没有得到它.
当它具有与Enums中完全相同的泛型声明时,为什么这会导致未经检查的强制转换编译器警告valueOf?
public static final <T extends Enum<T>> Enum toValue(T for_value, String value) {
try {
return Enum.<T>valueOf((Class<T>)for_value.getClass(), value);
} catch(RuntimeException rx) {
throw new IllegalArgumentException(value);
}
}
Run Code Online (Sandbox Code Playgroud)
编译器警告:
R:\jeffy\programming\sandbox\xbnjava\xbn\util\EnumUtil.java:92:
warning: [unchecked] unchecked cast
Enum.<T>valueOf((Class<T>)for_value.getClass(), value);
^
required: Class<T>
found: Class<CAP#1>
where T is a type-variable:
T extends Enum<T> declared in method <T>toValue(T,String,String)
where CAP#1 is a fresh type-variable:
CAP#1 extends Enum from capture of ? extends Enum
R:\jeffy\programming\sandbox\xbnjava\xbn\util\EnumUtil.java:98: error: missing return statement
}
^
1 …Run Code Online (Sandbox Code Playgroud) 我是初学者Java学生.所以任何帮助将不胜感激!
我设计了一个类卡和类甲板,我将在我创建的游戏中使用它.到目前为止,我的游戏似乎运行得很好,但我遇到的问题在于我的卡类.我想利用我的getRank()方法来积累玩家所拥有的牌的积分(不论其合适).
例如,如果他们画了2个钻石,那么它将值2分,3分3分......等等.我已经创建了一个String[]调用ranks来尝试这样做,我认为这就是它的作用.但是,我希望所有面部卡片(如国王,女王......)的值都为10.但并非所有这些卡片都位于我的阵列中的索引10处.我可以就如何调整此问题提供一些指导吗?
先感谢您.
int rank;
int suit;
String[]ranks = { " "," ", " " } //all 13 ranks from Ace to King
String[]suits = { " ", " ", " "} //all ranks
public Card(int rank, int suit){
this.rank = rank;
this.suit = suit;
}
public void setRank(int rank){
this.rank = rank;
}
public int getRank(){
return rank;
}
//more code for suits
public String toString(){
return ranks[rank]+" of "+suits[suit];
}
Run Code Online (Sandbox Code Playgroud) 在 JavaDoc 块中的每一行之前放置星号的原因是什么?虽然这似乎是鼓励和接受的约定,而且我终于屈服于这样做,但它肯定不会使我的文档编写速度更快(尽管有助于创建它们的工具,例如Sublime 中的DocBlockr 插件) .
多行注释中的行不超过 75 个字符的一个明显好处是,您的代码可以更轻松地共享,而无需对其进行调整,并且查看者无需向右滚动即可阅读您的文档。
但是为什么要更进一步,并有这个额外的约定呢?左侧的填充空间可以使用可选的星号前缀来完成......为什么每一行?
我正在阅读文本行,并创建一个独特单词列表(在小写之后).我可以使用flatMap进行此操作,但无法使其与地图的"子"流一起使用.flatMap看起来更简洁,"更好",但为什么不同的工作在一个上下文而不是另一个?
顶级:
import static java.util.stream.Collectors.toList;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.regex.Pattern;
public class GetListOfAllWordsInLinesOfText {
private static final String INPUT = "Line 1\n" +
"Line 2, which is a really long line\n" +
"A moderately long line 3\n" +
"Line 4\n";
private static final Pattern WORD_SEPARATOR_PATTERN = Pattern.compile("\\W+");
public static void main(String[] args) {
Run Code Online (Sandbox Code Playgroud)
为什么这个不同允许重复:
final List<String> wordList = new ArrayList<>();
Arrays.stream(INPUT.split("\n"))
.forEach(line -> WORD_SEPARATOR_PATTERN.splitAsStream(line).
map(String::toLowerCase)
distinct().
forEach(wordList::add));
System.out.println("Output via map:");
wordList.stream().forEach(System.out::println);
System.out.println("--------");
Run Code Online (Sandbox Code Playgroud)
输出:
Output via map:
line …Run Code Online (Sandbox Code Playgroud) 这是Java Concurrency In Practice中的 8.1列表:
public class ThreadDeadlock {
ExecutorService exec = Executors.newSingleThreadExecutor();
public class RenderPageTask implements Callable<String> {
public String call() throws Exception {
Future<String> header, footer;
header = exec.submit(new LoadFileTask("header.html"));
footer = exec.submit(new LoadFileTask("footer.html"));
String page = renderBody();
//Will deadlock -- task waiting for result of subtask
return header.get() + page + footer.get();
}
}
}
Run Code Online (Sandbox Code Playgroud)
在里面
第8章:线程池 >第8.1.1节线程饥饿死锁
并有标题:
"在单线程中死锁的任务
Executor.不要这样做. "
为什么会导致死锁?我想 header.get()是被调用,然后footer.get()调用,每个结果都附加到字符串.为什么单个线程执行程序不足以一个接一个地运行这些?
相关章节文字:
8.1.1线程饥饿死锁
如果依赖于其他任务的任务在线程池中执行,则它们可能会死锁.在单线程执行程序中,将另一个任务提交给同一执行程序并等待其结果的任务将始终死锁.第二个任务位于工作队列中,直到第一个任务完成,但第一个任务将无法完成,因为它正在等待第二个任务的重新启动.如果所有线程都在执行被阻塞的任务,等待仍在工作队列中的其他任务,则在较大的线程池中也会发生同样的情况.这称为线程饥饿死锁 …
我需要检查用户输入的字母以及他们猜测的空格是否位于隐藏字的特定位置.
变量1等于用户猜测的空间索引..而letterGuess是他们猜测的字母.我的代码怎么样错了?
例如:秘密字是你好
hidden word is == -----
Run Code Online (Sandbox Code Playgroud)
用户猜测h 0 1 2 3
,它需要检查单词索引0 1 2 3处的空格是否hello包含用户猜测"h",如果是,则需要替换-----为h----.
String firstSpace = guessedSpaces.substring(0,1);
String secondSpace = guessedSpaces.substring(2,3);
String thirdSpace = guessedSpaces.substring(4,5);
String fourthSpace = guessedSpaces.substring(6,7);
int one = Integer.parseInt(firstSpace);
int two = Integer.parseInt(secondSpace);
int three = Integer.parseInt(thirdSpace);
int four = Integer.parseInt(fourthSpace);
(secretWord.charAt(one)==letterGuess)
(secretWord.charAt(one)==letterGuess)
(secretWord.charAt(one)==letterGuess)
(secretWord.charAt(one)==letterGuess)
Run Code Online (Sandbox Code Playgroud) 更新: 刚刚发现ManytOManyField正在选中特定专辑时导致管理界面崩溃。我将它们注释掉,注释掉所有对它的引用,重新运行makemigrations和migrate,现在管理界面再次工作......这让我离使这个“最喜欢的”列工作更远了:( 请参阅此后续:为什么 Django ManyToManyField 导致管理界面崩溃?为什么没有创建直通表?
背景:我的目标是制作“最喜欢的?” 此网页中的列反映了当前登录用户最喜欢的专辑,其中每个都是“否”或“是”,并且是一个可点击的链接来切换选择。(未登录时,它们都将是灰色的“n/a”-s。)

因此,对于每个专辑,每个用户可能恰好有零个或一个“已收藏”条目。如果该条目存在,则他们已将其收藏。如果它不存在,他们就没有。
这是我的Album模型,带有favorited_by_users多对多列(models.py底部是完整的):
class Album(models.Model):
OFFICIALITY = (
('J', 'Major studio release'),
('I', 'Non-major official release'),
('U', 'Unofficial'),
)
title = models.CharField(max_length=70)
description = models.TextField(max_length=500, default="", null=True, blank=True)
pub_date = models.DateField('release date')
officiality = models.CharField(max_length=1, choices=OFFICIALITY)
is_concert = models.BooleanField(default=False)
main_info_url = models.URLField(blank=False)
thumbnail = models.FileField(upload_to=get_upload_file_name, blank=True, null=True)
#virtual field to skip over the through table.
songs = models.ManyToManyField("Song", through="AlbumSong")
favorited_by_users …Run Code Online (Sandbox Code Playgroud) 尽管遵循了官方文档和其他地方的建议,但我无法弄清楚如何在 Django (1.7) 模板中打印所有表单错误消息。
我有一个帐户用户/通行证管理员/管理员。我有意将 LoginForm 中允许的最小用户名长度更改为 6,以试图获得“错误长度”错误,而不是“错误用户/密码组合”错误(底部的完整表单/视图代码)。
根据官方文档,以下内容应打印所有错误消息:
{% if form.errors %}
{% for error in form.errors %}
<li><strong>{{ error|escape }}</strong></li>
{% endfor %}
{% endif %}
Run Code Online (Sandbox Code Playgroud)
但它只打印“用户名”这个词。
改成这个
{% for error, msg in form.errors %}
<li><strong>{{ error|escape }}: {{ msg|escape }}</strong></li>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
印刷
Username
u: s
Run Code Online (Sandbox Code Playgroud)
嗯?
我也试过这个,但它什么也没打印出来:
{% for error, msg in form.non_field_errors %}
<li><strong>{{ error|escape }}: {{ msg|escape }}</strong></li>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
与此相同:
{% for error in form.non_field_errors %}
{{error}}
{% endfor …Run Code Online (Sandbox Code Playgroud) 说,我有一个名为python的脚本hello.py,我在mac上运行:
$ python hello.py
Run Code Online (Sandbox Code Playgroud)
我需要做什么来运行它:
$ hello
Run Code Online (Sandbox Code Playgroud)