Welkom terug.
In deze video gaan we in toestemming om toe te voegen aan de reactie routes die we zojuist hebt toegevoegd in zo bewerken actualisering en vernietig de enige die te gebruiken of om te kunnen daadwerkelijk bewerken of iets bij te werken als die gebruiker eigenaar is van de reactie, net als wij deden voor campings.
We bereiken dat met in principe dezelfde code waar we een middleware denk dat we de naam van ons check camping eigendom maar ons zal check reactie eigendom worden opgeroepen en dan willen we ook om ervoor te zorgen dat we verbergen en tonen die knoppen, zodat we don ' t tonen een gebruiker een delete knop die ze eigenlijk niet kunnen klikken.
Ze hebben geen toestemming om die opmerking te verwijderen.
Dat is ook in principe dezelfde code die we hebben gebruikt voor opmerkingen of voor campings.
En toen en dit is ten slotte het enige dat echt nieuw is, is dat ik wil dat we onze middleware refactoren.
Dus eigenlijk gewoon bewegen al onze middleware uit in een nieuw bestand en vereisen dat bestand zal beginnen door ervoor te zorgen dat een gebruiker niet op de te bewerken route kan krijgen als hij of zij niet bezitten die opmerking.
Dus laten we gaan naar de route in plaats van onze opmerkingen hier.
En laten we gaan naar Bewerken.
Wij willen een middleware hier dat de controle zal doen voor ons.
Dus check opmerkingen eigenaarschap net zoals we in de laatste video of in de laatste camping video waar we wilden controleren camping eigendom en als we een kijkje nemen op die code gaat gewoon de hele zaak te kopiëren over te nemen deed.
Het is een beetje lang zet het op de bodem met onze andere midden, waar we die naam check reacties eigenaar zal veranderen.
Het eerste wat we doen is controle is de gebruiker inloggen is een gebruiker ingelogd.
Als niet alleen redirect ze terug en zal een boodschap uiteindelijk laten zien dat zegt u alstublieft het of je moet ingelogd zijn om dat te doen.
En dat is een andere fout dan u niet in de juiste eigenaar.
Dus we willen niet gewoon zeggen dat je geen toestemming om dat te doen.
Altijd willen we inloggen eerst zeggen en dan als je jezelf in en je nog steeds niet de eigenaar is dan zullen we een ander bericht te verzenden.
Voor nu maakt het niet uit omdat we niet die berichten hebben.
Dus als u bent aangemeld we nodig hebben om de comment reageren prima op vrijdag te vinden.
Het is niet aan te vragen up tramhalte ID verzoek tramhalte reacties Id verandering dit te vinden commentaar.
Als er een fout redirect terug dat is prima.
Else laten veranderen je reactie om het een beetje duidelijker te maken.
En ik blijf zeggen commentaar.
Ik bedoel, veranderen de javascript reactie niet de werkelijke reactie model.
Dan moeten we controleren of de gevonden reactie auteur dat ID gelijk verzoek dat gebruikers-ID.
Dus laten we eens een kijkje nemen weer in het model voor commentaar.
Onthoud, wij hebben een auteur en dat de auteur heeft een ID en het is een mangoest I.D. Dus we kunnen niet triple gelijken doen net als bij camping.
Dus indien gevonden opmerking out auteur ID dot gelijk aan die speciale methode zijn we te vergelijken met de aangemeld ID gebruiker die is opgeslagen in verzoek aan de gebruiker dankzij paspoort.
Dus als dat het geval is is alles goed wat betekent dat we verder gaan en lopen de route handler volgende.
Anders redirect de reden dat ik gescheiden van dit alles, zelfs al is het roodstaart omleiden drie verschillende keren terug, zodat we een andere foutmelding kan aangeven zodra we dat in slechts een paar video's van nu heen en weer.
Dus laten we nu ervoor te zorgen dat alles goed is.
Controleer gemeenschappelijk eigendom.
We hebben dat hier.
We moeten gaan om de route bewerken.
We voegde eraan toe dat in toom commentaar ownership.
Grote laten we het een schot en zie wat er gebeurt.
Goed.
Dus iedereen moet in staat zijn om hier te komen.
Ik ben niet ingelogd op dit moment, dus als ik erop klik kost het me hier terug.
Perfect.
Nu als ik log in als Sirius Black, die gecreëerd die opmerking en ik probeer dat nog eens bij dat het nu werkt.
Laten we gewoon voeg wat expert spullen in hier.
Nu dat is niet beschermd, want dat is de update route.
Dus we eigenlijk alleen maar doen precies hetzelfde ding dat waarom het zo leuk dat we het verplaatst naar een aparte functie, want we konden gewoon allemaal van die code hebben hier en vervolgens gedupliceerd het terug voor-update ook.
Hier.
En vernietigen.
Maar laten we het bij laten voor nu.
Zorg ervoor dat het werkt.
Dus in theorie zou ik een of andere manier eindigen verzenden van een update verzoek van postbode of iets dergelijks van een andere app.
Maar je weet dat zou een gebruiker die wat zou zeer zeldzaam zijn te doen, maar in theorie kan iemand dat doen.
En zonder toevoeging van de cheque reactie eigendom aan te werken zou niet worden beschermd.
Maar we zullen niet iets anders zien hier als ik probeer in.
Hetzelfde probleem als ik terug log in en je kunt gewoon overslaan door deze als je niet echt zorgen om het te zien.
Niet de meest spannende deel van deze cursus naar me te kijken Meld je nu aan als ik updaten werkt prima te bewerken.
En als ik niet had getekend op dat punt of als mijn data verkeerd was of iets raars gebeurd zou het dan redirect me terug en uiteindelijk een bericht te laten zien.
OK dus dat is-update nu als ik klik op delete.
Als ik niet ben aangemeld ik die opmerking dat is natuurlijk niet wat we willen dat er gebeurt kunt verwijderen dus laten we dat oplossen.
Laten we naar een pagina die wel opmerkingen.
Deze heeft niet één.
Laat me toe te voegen een opmerking in wederom niet het meest spannende.
Oh, en ik typte een reactie op het wachtwoord onjuist.
Oh jee.
Laten we proberen dat nog een keer.
OK.
Laten we naar Rocky Mountain hoog.
Voeg een commentaar in voor mij.
OK.
Dus ik wil niet dat een gebruiker in staat om dit te verwijderen, tenzij ze zijn ingelogd.
Het is precies hetzelfde.
Super makkelijk voor ons.
Zoek gewoon het vernietigen route toe te voegen of middelste Waren en dat is alles wat we nodig hebben.
Dus als we proberen liet ik gewoon dat je dat nog voordat we die verandering.
Iedereen kan verwijderen.
Nu als ik vernieuw ik niet ingelogd Ik klikte schrappen en het is er nog steeds.
Weigert te verwijderen.
U zoekt de beste grote stap is het weergeven en verbergen van deze knoppen op de juiste wijze.
Dus laat me inloggen of aanmelden als iemand anders.
Laten we aanmelden als Dumble deur tot deur.
Wachtwoord is ook met een wachtwoord.
Aanmelden.
Laten we toegevoegde opmerkingen in ook.
Nu twee verschillende reacties twee verschillende auteurs.
Als ik in deze dubbele deur ben aangemeld Ik wil alleen de delete knoppen hier te zien.
Deze moeten worden verborgen voor mij dus om dat te doen.
Neem een ​​kijkje op hoe hij het deed op de show pagina voor camping bewerken knoppen verwijderen en.
Dat is hier.
Deze enkele lijn IF huidige gebruiker en camping auteur data is gelijk aan de huidige gebruikers-ID dan laten we dit heel erg vergelijkbaar met uitzondering van een paar veranderingen.
Eerste is het niet campings op auteur stip.
Het is opmerkingen auteur en dat is hier gedefinieerd in onze foreach.
Dus wat is dit in ons geval voor elke camping reacties serie noemen Reacties Geeft de auteur weer te geven de tekst en controleer vervolgens of er een huidige gebruiker.
En als dat huidige gebruiker ID is hier dat wordt opgeslagen.
Er is veel van het verplaatsen van stukken hier, maar ik zal dit kort herzien.
Dit is vanuit die ene lijn die we Abdoulaye toegevoegd ons top die toe te voegen in.
Waar ben je hier.
Huidige gebruiker om elke één van onze templates.
Huidige gebruiker gelijk verzoek van de gebruiker en de aanvraag gebruikers uit paspoort.
Het heeft de gebruikersinformatie zodat huidige gebruiker.
Als er één moeten we dat de check te doen als er een is, want als we niet dit eerste deel hebben en alles wat we hebben is dat als er geen huidige gebruiker zal het ons een fout zeggend huidige gebruiker is niet gedefinieerd te geven.
OK zo vaak voor dat het ID-auteur.
Het laatste wat we nodig hebben is om aan onze haakje sluiten of een accolade van de if-statement.
Geen gelijk-teken.
Dus dit is allemaal ingesloten in dat als verklaring.
Laten we geven het een schot te beginnen.
Als ik waren vers zal het me afmelden en we verwachten geen knoppen te zien.
Perfect seinen zal dubbele deur doen.
Ga terug naar de Rocky Mountain High en we die knoppen zien alleen.
Perfect.
Zorg ervoor dat deze nog steeds werkt.
Ziet er goed uit, maar nog steeds het ziet er ook goed uit.
Laten we nu aanmelden als Sirius Black.
Nu verwachten we de knoppen zien en wat we doen.
Perfect en ik kan ook deze nu verwijderen.
Laten we het verwijderen.
Ik wil dat de camping te verlaten, omdat campings zijn kostbaar.