Guten Nachmittag alle, ich versuche, ein Bild auf Firebase hochladen und wieder auf einer Zelle .. Ich habe nur über alle Inhalte, außer das Bild funktioniert (ich kann den Fehler loswerden) .Swift 4 Hochladen von Bildern zu Firebase
Here is the error I am getting
Kann nicht Initialisierer für Typ 'Beiträge' mit einer Argumentliste vom Typ aufrufen '(postImageStringUrl: String, Inhalt: String !, postID: String)'
//[Save Image]
// Create data in the server
let data = UIImageJPEGRepresentation(self.addedImage.image!, 0.5)
let metadata = StorageMetadata()
metadata.contentType = "image/jpeg"
let postId = "\(Auth.auth().currentUser!.uid)\(NSUUID().uuidString)"
// Create a reference to the file you want to upload
let imagePath = "postImages\(postId)/postPic.jpg"
storageRef.child(imagePath).putData(data!, metadata: metadata) { (metadata, error) in
if error == nil {
let postRef = self.databaseRef.child("posts").childByAutoId()
let post = Posts(postImageStringUrl: String (describing: metadata!.downloadURL()), content: descriptionTextView.text, postId: postId)
postRef.setValue(post.toAnyObject())
}else{
print(error.debugDescription)
}
}
//[Save Image]
Hier ist mein postViewController
import Foundation import Firebase import FirebaseDatabase import FirebaseStoragestruct Posts {
var postImageStringUrl: String! var department: String! var content: String! var username: String! var postId: String! var ref: DatabaseReference? var key: String! init(postImageStringUrl: String, department: String, content: String, username: String,postId: String, key: String = ""){ self.postImageStringUrl = postImageStringUrl self.department = department self.content = content self.username = username self.postId = postId self.key = key self.ref = Database.database().reference() } init(snapshot: DataSnapshot){ let snapshotValue = snapshot.value as! NSMutableDictionary self.postImageStringUrl = snapshotValue["postImageStringUrl"] as! String self.department = snapshotValue["department"] as! String self.content = snapshotValue["content"] as! String self.username = snapshotValue["username"] as! String self.postId = snapshotValue["postId"] as! String self.key = snapshot.key self.ref = snapshot.ref } func toAnyObject() -> [String: AnyObject] { return ["postImageStringUrl": postImageStringUrl as AnyObject, "department": department as AnyObject,"content": content as AnyObject,"username": username as AnyObject, "postId": postId as AnyObject] }
}
Jede Hilfe wird sehr geschätzt ... Ty
Ihr so richtig !!! danke ... ich habe versucht, nicht Abteilung, Inhalt && Benutzername zu verwenden Ich habe nicht bemerkt, dass es dort sein musste –
@RubenFranco Ausgezeichnet! Froh, dass ich helfen konnte. Achten Sie darauf, die Antwort zu akzeptieren, damit es anderen helfen kann! – Jay
habe gerade wieder danke .. –