Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 如何根据当前用户的角色进行分类_Swift_Parse Platform_Pfquery - Fatal编程技术网

Swift 如何根据当前用户的角色进行分类

Swift 如何根据当前用户的角色进行分类,swift,parse-platform,pfquery,Swift,Parse Platform,Pfquery,我有一个应用程序,其中有两个角色,“管理员”和“员工”。在注册时,我将segue设置到注册按钮中,它会自动对员工或管理员视图控制器执行正确的segue。但是,在用户创建并注销并尝试重新登录之后,如何设置条件if-else语句来查询当前用户的角色并相应地执行正确的segue。提前谢谢。这是我在初始视图控制器/登录屏幕上的代码 override func viewDidAppear(animated: Bool) { //need to query current users role...and

我有一个应用程序,其中有两个角色,“管理员”和“员工”。在注册时,我将segue设置到注册按钮中,它会自动对员工或管理员视图控制器执行正确的segue。但是,在用户创建并注销并尝试重新登录之后,如何设置条件if-else语句来查询当前用户的角色并相应地执行正确的segue。提前谢谢。这是我在初始视图控制器/登录屏幕上的代码

override func viewDidAppear(animated: Bool) {

//need to query current users role...and then if else, and segue to either Admin Home or Employee Home



     var roleQueryClass = PFQuery(className: "_Role")
     var roleQuery = PFRole.query()
     roleQuery?.whereKey("name", equalTo: "Admin")
     roleQuery?.findObjectsInBackgroundWithBlock({ (objects, error) -> Void in

  if let role = objects {

    for object in role {

      if let role = object as? PFRole {



        if PFRole() == PFUser.currentUser() {

          self.performSegueWithIdentifier("toHomeFromSignUp", sender: self)

        } else {

          self.performSegueWithIdentifier("toEmployeeHome", sender: self)

注册时,将角色保存在NSUserDefaults中,登录时,检查NSUserDefaults中的值,并进行相应的转换。

I不熟悉NSUserDefaults。我得温习一下。谢谢你的提示。嘿,安妮塔,我正在尝试你说的…也许你可以帮我完成…我在userDidSignupInBackGroundWithBlock中有以下代码试图设置NSUserDefault。。。。然后在我的登录屏幕上,我试图获取我设置的密钥……你觉得这对吗?我找不到合适的。let defaultName=“Admin”let defaults=NSUserDefaults.standardUserDefaults()defaults.setObject(“角色”,forKey:defaultName)defaults.synchronize()以下是我的登录Viewcontroller中的代码,它位于ViewDidDisplay下,试图找到相应的键和segue。如果(PFUser.currentUser()!=nil){let defaults=NSUserDefaults.standardUserDefaults()如果let name=defaults.stringForKey(“管理员”){self.performsgueWithIdentifier(“toHomeFromLogin”,发件人:self)}或者{self.performsgueWithIdentifier(“toEmployeeHome,发件人:self)})不太确定我可以在哪里设置这个…当我的应用程序在注册方法中时,它将崩溃。。。。不能将PFUser设置为对象吗?让user=PFUser.currentUser()让defaults=NSUserDefaults.standardUserDefaults()默认值。setObject(user,forKey:“Admin”)默认值。synchronize()在应用程序委托中设置NSUserDefaults,在loginview控制器中更新时设置并同步。