我有三个模型:user,noun和usernoun(user_noun在PHP/Eloquent中).user和之间存在着多对多的关系noun."pivot"表有一个额外的属性score.我可以将此查询与Eloquent一起使用来汇总用户获得用户总分的每个名词的分数:
$users = User::leftJoin('noun_user', 'user.id', 'noun_user.user_id')
->groupBy('user.id')
->select('user.*', DB::raw('sum(noun_user.score) as score'))
->orderBy('score', 'desc')
->get();
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何在Waterline中使用它.这可行,但不是在我取消注释该.populate('user')行时.我需要user填充.
UserNoun
.find({})
//.populate('user')
.groupBy('user')
.sum('score')
.sort({ score: 'desc' })
.exec((err, usernouns) => {
return res.json(usernouns)
})
Run Code Online (Sandbox Code Playgroud)
这是一个有效的.native()查询:
UserNoun.native(function(err, collection) {
collection.aggregate([
{
$lookup: {
from: 'user',
localField: 'user',
foreignField: '_id',
as: 'user'
}
},
{
$group: { _id: '$user', total: { $sum: '$score' } } …Run Code Online (Sandbox Code Playgroud) 我正在尝试为外语设置键盘.我正在使用jQuery将按键转换成外来字符.我在用:
ALT+ SHIFT+A - Z
我的代码适用于所有这些,除了这4个:
它工作正常,在Firefox,但在Chrome和Safari(我使用的是Mac)我得到这些重音符号- ,ˆ,,¨ -而不是一个应该进入textarea的外来字符.´˜
以下是一些代码:
function type(e, char, textArea) {
e.preventDefault();
var start = textArea[0].selectionStart;
var end = textArea[0].selectionEnd;
var len = textArea.val().length;
var newPos = start + char.length;
textArea.val(textArea.val().substring(0, start) + char + textArea.val().substring(end, len));
textArea[0].setSelectionRange(newPos, newPos);
}
$('textarea').keydown(function(e) {
var …Run Code Online (Sandbox Code Playgroud) 我想用class删除所有元素sample.
这在Chrome和Safari中运行良好:
document.querySelectorAll('.sample').forEach(function(e) {
e.parentNode.removeChild(e);
});
Run Code Online (Sandbox Code Playgroud)
这是我在Firefox中遇到的错误:
TypeError:document.querySelectorAll(...).forEach不是函数
这是xml部分:
<ProgressBar
android:layout_width="50dp"
android:layout_height="match_parent"
android:padding="15dp"
android:layout_marginEnd="5dp"
android:layout_alignParentEnd="true"
android:visibility="gone"
android:indeterminateTint="@color/colorPrimary"
android:id="@+id/progressBar"
android:indeterminate="true" />
Run Code Online (Sandbox Code Playgroud)
我用它来显示和隐藏进度条:
progressBar.setVisibility(View.GONE);
progressBar.setVisibility(View.VISIBLE);
Run Code Online (Sandbox Code Playgroud)
这正如我想要在较新的手机上工作一样,但在API 21和22上,进度条永远不可见.
我收到一个看起来像这样的对象:
this.tokensData = {
O: {
id: 0,
name: value1,
organization: organization1,
...,
},
1: {
id: 1,
name: value1,
organization: organization1,
...,
},
2: {
id: 2,
name: value2,
organization: organization2,
...,
},
...
}
Run Code Online (Sandbox Code Playgroud)
我想要筛选id和删除Object其id匹配的id我从接收store。到目前为止我尝试过的:
const filteredObject = Object.keys(this.tokensData).map((token) => {
if (this.$store.state.id !== this.tokensData[token].id) {
return this.tokensData[token];
}
});
Run Code Online (Sandbox Code Playgroud)
这取代了Objectwith undefined- 这对我有用,但显然不理想。任何帮助深表感谢!
我有一个中间件,我想只在http方法发布时应用.
以下工作正常,但我觉得有更好的方法:
'use strict'
const express = require('express'),
router = express.Router()
router.use((req, res, next) => {
if (req.method === 'POST') {
// do stuff
}
return next()
})
module.exports = router
Run Code Online (Sandbox Code Playgroud)
我想做这样的事情,但它不起作用:
'use strict'
const express = require('express'),
router = express.Router()
router.post((req, res, next) => {
// do stuff
return next()
})
module.exports = router
Run Code Online (Sandbox Code Playgroud) 这对英语很有用:
public static func posOf(needle: String, haystack: String) -> Int {
return haystack.distance(from: haystack.startIndex, to: (haystack.range(of: needle)?.lowerBound)!)
}
Run Code Online (Sandbox Code Playgroud)
但对于外来字符,返回的值总是太小.例如,"का"被认为是一个单位而不是2个单位.
posOf(needle: "???", haystack: "?? ???? ?? ???? ????? ???? ??? ??? ???? ???") // 21
Run Code Online (Sandbox Code Playgroud)
我后来使用21在NSRange(location:length:)需要28的地方才能NSRange正常工作.
$str = '?? ?? ????? ?? ???? ??? ??? ???';
$str = preg_replace('/(?<=\b)?????(?=\b)/u', 'Musa', $str);
$str = preg_replace('/(?<=\b)???(?=\b)/u', 'suna', $str);
echo $str;
Run Code Online (Sandbox Code Playgroud)
这无法取代?????.它应该给予?? ?? Musa ?? ???? ??? suna ???,而是给予?? ?? ????? ?? ???? ??? suna ???.
这是发生了与结尾的所有单词?,像??????.它适用于单词?中间的单词(没有单词以a开头?).这是否意味着\b不适用??这是一个错误吗?
我想查询 aquestion及其所有answers. 以下两个函数工作得很好。问题是我认为这应该在一个函数中完成,一个查询。(为简洁起见,我删除了错误检查)。
func QuestionById(id string) (*Question, error) {
question := new(Question)
_ = db.QueryRow("select * from question where question.id = ?", id).Scan(
&question.Id,
&question.LessonId,
&question.Body,
&question.Type,
)
return question, nil
}
func AnswersByQuestionId(id string) ([]*Answer, error) {
rows, _ := db.Query("select * from answer where question_id = ?", id)
defer rows.Close()
answers := make([]*Answer, 0)
for rows.Next() {
answer := new(Answer)
_ = rows.Scan(&answer.Id, &answer.Body, &answer.QuestionId, &answer.Correct)
answers = append(answers, answer)
}
_ = rows.Err() …Run Code Online (Sandbox Code Playgroud) Android有一个默认的绿色泪滴,显示在文本下方以帮助选择文本或位置.如何在没有@drawables 的情况下改变它的颜色?我尝试过, android:textSelectHandle="@color/colorPrimary"但只是让它消失了.
<EditText
android:inputType="text"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_toEndOf="@+id/imgMagnifyingGlass"
android:textAlignment="viewStart"
android:backgroundTint="@color/colorWhite"
android:textCursorDrawable="@null"
android:textSelectHandle="@color/colorPrimary"
android:textColor="@color/colorGray"
android:id="@+id/editTextWord" />
Run Code Online (Sandbox Code Playgroud)