我一直在玩虚拟维基中提供的smiple代码,我已经尝试了以下内容;
import com.websudos.phantom.dsl._
case class Student(id: UUID, name: String)
class Students extends CassandraTable[Students, Student] {
object id extends UUIDColumn(this) with PartitionKey[UUID]
object name extends StringColumn(this)
def fromRow(row: Row): Student = {
Student(id(row), name(row))
}
}
object Students extends Students with Connector {
def getByName(name: String): Future[Option[Student]] = {
select.where(_.name eqs name).one()
}
}
但我的IDE一直说Cannot resolve symbol where
,编译器说value where is not a member of com.websudos.phantom.builder.query.RootSelectBlock[Students,Student]
我使用Scala 2.11.6
和Phantom 1.10.1
,非常感谢所有帮助!
答案 0 :(得分:1)
您错过了一个基本的Cassandra问题,您无法通过$(function() {
$('form').submit(function(e) {
e.preventDefault();
var valid;
valid = validateContact()
if(valid ) {
$.ajax({
type: 'POST',
url: "http://facebook.com",
data: {},
dataType: 'json',
success: function() {
alert('success');
},
error: function() {
alert('error');
}
})
}
});
});
function validateContact(){
var valid = true;
var name = document.getElementById("name").value;
var lastname = document.getElementById("lastname").value;
var email = document.getElementById("regEmail").value;
if(name ==''){
document.getElementById("name").style.borderColor="red";
name.value="Please Enter Name";
valid = false;
}
if(lastname ==''){
valid = false;
}
if(email ==''){
valid = false;
}
return valid;
}
进行查询,因为它不是索引列。根据您刚刚定义的表,您尝试执行的查询无效,Cassandra会在运行时告诉您。
Phantom会在编译时阻止大多数不好的事情。值得一读this blog series来了解Cassandra的工作原理。
为了正确看待问题,唯一对您的name
表有效的where
查询是:
Students