我正在学习在 youtube 上按照 Net Ninja 的教程在 flutter 中使用 firestore。完成用户身份验证后,每当创建新用户时,这个人都会将用户记录添加到数据库中,为此,添加了一个新模型,传递了 1 个名为“name”的字符串,从我理解的调用中,他映射了模型,然后使用.data['name'] 从模型中获取该字符串(字符串被称为名称),在执行此操作时,出现错误The operator '[]' isn't defined for the type 'Map<String, dynamic> Function()'为什么我会收到此错误?
用户名模型
class Username {
final String name;
Username({ this.name });
}
Run Code Online (Sandbox Code Playgroud)
databse.dart 文件(以下代码封装在一个名为 DatabaseService 的类中)
List<Username> _usernameListFromSnapshot(QuerySnapshot snapshot) {
return snapshot.docs.map((doc){
return Username(
name: doc.data['name'] ?? '',
);
}).toList();
}
Run Code Online (Sandbox Code Playgroud)
授权文件
Future registerWithEmailAndPassword(String email, String password) async {
try {
UserCredential result = await _auth.createUserWithEmailAndPassword(email: email, password: password);
User user = result.user;
// create a new …Run Code Online (Sandbox Code Playgroud) 我正在开发一个 django 项目,并且想在其中实现一个跟随/跟随系统,目前我有一个朋友系统,顺便说一句,它根本不起作用,但我只想知道如何编写该代码,这个想法就是拥有一个像 instagram 一样的朋友系统。
模型.py 文件
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
profile_pic = models.ImageField(upload_to='profile_pics', null=True, blank=True, default='default.png')
bio = models.CharField(max_length=400, default=1, null=True)
def __str__(self):
return f'{self.user.username} Profile'
Run Code Online (Sandbox Code Playgroud)
视图.py 文件
def profile(request, username=None):
profile, created=Profile.objects.get_or_create(user=request.user)
if username:
post_owner = get_object_or_404(User, username=username)
user_posts = Profile.objects.filter(user_id=post_owner)
else:
post_owner = request.user
user_posts = Profile.objects.filter(user=request.user)
args1 = {
'post_owner': post_owner,
'user_posts': user_posts,
}
return render(request, 'profile.html', args1)
Run Code Online (Sandbox Code Playgroud)